Error after update to 0.9.8.1


(zh99998) #1

origin problem solved but meet new one.
look down


(zh99998) #4

i meet a js crash. all topics are showing a blank screen and console says


(zh99998) #5

…ohh…i tried anything i can.
even clean all about discourse, and install a new one.
then it works well. but when i put my database into it (and rake db:migrate). it will crash again like the screenshot.
of cause then i think about my database is broken.


(Claus Strasburger) #6

I’ve got the same problem - with 0.9.8.1, running in production, coming from 0.9.7.9.
I tried clobbering assets, but still – The website works well, but as soon as I open up a thread (or reload on one), I get

Uncaught TypeError: Object #<Object> has no method 'split' vendor-e5e9b0cca67ea0c65a14c29db0270a2a.js:9
Uncaught TypeError: Cannot call method 'offset' of undefined vendor-e5e9b0cca67ea0c65a14c29db0270a2a.js:17
```...

(Claus Strasburger) #7

After some investigation, I found the source: The helper breakUp
https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/helpers/application_helpers.js#L10

is for some reason called with the context object as hint: (which is a Post object)

this, in turn, causes Ember.js (in Ember.Handlebars.normalizePath) to try and .split() that object.
I suspect that the wrong argument is passed here, but I cannot figure out why…


(Claus Strasburger) #8

I did some bisecting:

git bisect start
# bad: [23a17bd76d5a0bb1f6c0949c87e953582d399391] Merge pull request #1801 from nickborromeo/issue-1794
git bisect bad 23a17bd76d5a0bb1f6c0949c87e953582d399391
# good: [e44f51f9fadb7b0682e616786601e36268ced017] Version bump to v0.9.7.9
git bisect good e44f51f9fadb7b0682e616786601e36268ced017
# good: [e44f51f9fadb7b0682e616786601e36268ced017] Version bump to v0.9.7.9
git bisect good e44f51f9fadb7b0682e616786601e36268ced017
# bad: [f1c5f4fa9323dd6aa31ff56c0799b8a934c0b91f] Merge pull request #1667 from cassiuschen/puma
git bisect bad f1c5f4fa9323dd6aa31ff56c0799b8a934c0b91f
# bad: [47e1d00f96c88faadfe9f2570836acae0f9f0f17] Check that common passwords list is greater than 0
git bisect bad 47e1d00f96c88faadfe9f2570836acae0f9f0f17
# good: [cbaa0a3a49286c3106a08f93f614327256a26441] BUG: drafts broken for new topics
git bisect good cbaa0a3a49286c3106a08f93f614327256a26441
# good: [1781b290cb3beee0b90fa9d3dcfeffa09a0271f8] Fix top_topic.rb to be compatible with ruby 1.9
git bisect good 1781b290cb3beee0b90fa9d3dcfeffa09a0271f8
# good: [1781b290cb3beee0b90fa9d3dcfeffa09a0271f8] Fix top_topic.rb to be compatible with ruby 1.9
git bisect good 1781b290cb3beee0b90fa9d3dcfeffa09a0271f8
# bad: [8ec887e9cf28b5f23c740fc3f77eb12b82954e07] PERF: speed up breakUp
git bisect bad 8ec887e9cf28b5f23c740fc3f77eb12b82954e07
# good: [9738c4ff48faa6ed59a9adba19d5158e23a5bd6a] FEATURE: backport a minimal String#scrub BUGFIX: invalid byte sequence in email would explode all processing
git bisect good 9738c4ff48faa6ed59a9adba19d5158e23a5bd6a
# good: [b8184d8b9210bcee766efc81df6d29aef0720141] speed up bench add param for iterations
git bisect good b8184d8b9210bcee766efc81df6d29aef0720141
# bad: [d8c43f7b58fe4ffe5a50045e0c01f6f8f295f1b7] BUGFIX: fix username breakup so it works with IE FEATURE: breakup username based on name as well
git bisect bad d8c43f7b58fe4ffe5a50045e0c01f6f8f295f1b7
# first bad commit: [d8c43f7b58fe4ffe5a50045e0c01f6f8f295f1b7] BUGFIX: fix username breakup so it works with IE FEATURE: breakup username based on name as well

https://github.com/discourse/discourse/commit/d8c43f7b58fe4ffe5a50045e0c01f6f8f295f1b7

This seems to choke on the “name” property of user, but I wonder why this happens only with a migrated database…


(Claus Strasburger) #9

This fixes it for me, but it’s not pretty:
https://github.com/discourse/discourse/pull/1822


(Robin Ward) #10

@Sam do you have any idea why only some people are getting this issue? I dont’ mind the proposed fix but I’d prefer to know why it happens in the first place.


(Sam Saffron) #11

Having a look, the fix is a bit scary imho, we should fix the root issue.


(zh99998) #12

my production forum is still down.
there is a after-migrated database (before-migrated is missing…sorry) and months ago backup database.
what should i do ?
rollback or just wait?


(Sam Saffron) #14

Have you tried pulling latest?

Can you try

rm -fr tmp/cache
rm -fr public/assets
RAILS_ENV=production bundle exec rake assets:precompile

(zh99998) #15

of caurse i tried it…
i tried even erase all files and the discourse user, then re-install discourse. but once i restore my migrated database… it will break.


(Sam Saffron) #16

I merged Fix Post-rendering bug by cfstras · Pull Request #1822 · discourse/discourse · GitHub does it fix it for you?


(zh99998) #17

it works
thanks very much.


(Sam Saffron) #18