Found the bug, it's pretty simple null check. To help spread the knowledge,
I've created a simple starter project at
http://code.google.com/p/wave-protocol/issues/detail?id=167. Anyone keep to
get in to the client code can take is a good intro.

On Thu, Nov 25, 2010 at 8:00 AM, Tad Glines <[email protected]> wrote:

> Here the sequence of actions with the two "shiny" stack traces. I've also
> attached the debug logs for both.
> Note that user 1 is using Chrome 7.0.5 and user 2 is using Safari 5.0.3.
> The user1 log appears to be the post-refresh log. The user2 log has
> everything in it.
>
> 1. User1 creates wave, types "test" in blip.
> 2. User1 adds user 2 as participant.
> 3. User 2 clicks on the "Click here to reply" area
> 4. User 2 types Hello in blip.
> 5. User 1 gets the following "shiny"
>
> (TypeError): Cannot read property 'document_0' of undefined
>  stack: TypeError: Cannot read property 'document_0' of undefined
>     at $flush_6 (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:15490:102
> )
>     at $flush (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:7322:105
> )
>     at Object.flush_1 (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:7352:16
> )
>     at $receiveLoop (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:93239:121
> )
>     at Object.onOperationReceived_0 [as onOperationReceived] (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:93288:150
> )
>     at $signalOperationReceived (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:88151:193
> )
>     at Object.onOperationReceived (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:88469:3
> )
>     at $onOperationReceived (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:90930:201
> )
>     at $onServerDeltas (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:90956:110
> )
>     at $onServerDelta (
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html:90938:97
> )
>  type: non_object_property_load
>  arguments: document_0,
>   Unknown.$collect (JsArrayString.java:42)
>   Unknown.fillInStackTrace_2 (StackTraceCreator.java:146)
>   Unknown.fillInStackTrace_0 (StackTraceCreator.java:386)
>   Unknown.fillInStackTrace (Throwable.java:72)
>   Unknown.$$init_16 (Throwable.java:46)
>   Unknown.Throwable_0 (Throwable.java:49)
>   Unknown.Exception_0 (Exception.java:25)
>   Unknown.RuntimeException_0 (RuntimeException.java:25)
>   Unknown.JavaScriptException_0 (JavaScriptException.java:127)
>   Unknown.caught_0 (Exceptions.java:29)
>   Unknown.$flush_6 (ContentDocumentSink.java:157)
>   Unknown.$flush (StaticChannelBinder.java:80)
>   Unknown.flush_1 (StaticChannelBinder.java:78)
>   Unknown.$receiveLoop (OperationSucker.java:117)
>   Unknown.onOperationReceived_0 (OperationSucker.java:85)
>   Unknown.$signalOperationReceived (OperationChannelImpl.java:285)
>   Unknown.onOperationReceived (OperationChannelImpl.java:118)
>   Unknown.$onOperationReceived (ConcurrencyControl.java:677)
>   Unknown.$onServerDeltas (ConcurrencyControl.java:589)
>   Unknown.$onServerDelta (ConcurrencyControl.java:570)
>   Unknown.onDelta (OperationChannelImpl.java:162)
>   Unknown.deliverTo_2 (WaveletDeltaChannelImpl.java:112)
>   Unknown.$flushServerMessages (WaveletDeltaChannelImpl.java:485)
>   Unknown.$processUpdateMessage (WaveletDeltaChannelImpl.java:411)
>   Unknown.onWaveletUpdate_2 (WaveletDeltaChannelImpl.java:296)
>   Unknown.$onWaveletUpdate (OperationChannelMultiplexerImpl.java:176)
>   Unknown.onUpdate_5 (OperationChannelMultiplexerImpl.java:506)
>   Unknown.onUpdate_6 (ViewChannelImpl.java:329)
>   Unknown.onWaveletUpdate_0 (RemoteWaveViewService.java:306)
>   Unknown.onWaveletUpdate (RemoteViewServiceMultiplexer.java:107)
>   Unknown.onMessage_3 (WaveWebSocketClient.java:144)
>   Unknown.onMessage_1 (WaveSocketFactory.java:65)
>   Unknown.onMessage (GWTSocketIOConnectionImpl.java:120)
>   Unknown.anonymous (GWTSocketIOConnectionImpl.java:17)
>   Unknown.apply (Impl.java:168)
>   Unknown.entry0 (Impl.java:214)
>   Unknown.anonymous (Impl.java:57)
>
> 6. User 1 click the "refresh" link in the "shiny".
> 7. User 1 clicks the "Click here to reply" bar.
> 8. User 2 gets the following "shiny".
>
> (TypeError): Result of expression '($location_0[stackIndex] =
> 'ContentDocumentSink.java:' + '157' , this$static)' [undefined] is not an
> object.
>  line: 15490
>  sourceId: 4867586280
>  sourceURL:
> http://www.glines.com:9898/webclient/91A9339C73C1FD33A6449AE3339A5B6A.cache.html
>  expressionBeginOffset: 768566
>  expressionCaretOffset: 768643
>  expressionEndOffset: 768654
>   Unknown.$collect (JsArrayString.java:42)
>   Unknown.fillInStackTrace_2 (StackTraceCreator.java:146)
>   Unknown.fillInStackTrace_0 (StackTraceCreator.java:386)
>   Unknown.fillInStackTrace (Throwable.java:72)
>   Unknown.$$init_16 (Throwable.java:46)
>   Unknown.Throwable_0 (Throwable.java:49)
>   Unknown.Exception_0 (Exception.java:25)
>   Unknown.RuntimeException_0 (RuntimeException.java:25)
>   Unknown.JavaScriptException_0 (JavaScriptException.java:127)
>   Unknown.caught_0 (Exceptions.java:29)
>   Unknown.$flush_6 (ContentDocumentSink.java:157)
>   Unknown.$flush (StaticChannelBinder.java:80)
>   Unknown.flush_1 (StaticChannelBinder.java:78)
>   Unknown.$receiveLoop (OperationSucker.java:117)
>   Unknown.onOperationReceived_0 (OperationSucker.java:85)
>   Unknown.$signalOperationReceived (OperationChannelImpl.java:285)
>   Unknown.onOperationReceived (OperationChannelImpl.java:118)
>   Unknown.$onOperationReceived (ConcurrencyControl.java:677)
>   Unknown.$onServerDeltas (ConcurrencyControl.java:589)
>   Unknown.$onServerDelta (ConcurrencyControl.java:570)
>   Unknown.onDelta (OperationChannelImpl.java:162)
>   Unknown.deliverTo_2 (WaveletDeltaChannelImpl.java:112)
>   Unknown.$flushServerMessages (WaveletDeltaChannelImpl.java:485)
>   Unknown.$processUpdateMessage (WaveletDeltaChannelImpl.java:411)
>   Unknown.onWaveletUpdate_2 (WaveletDeltaChannelImpl.java:296)
>   Unknown.$onWaveletUpdate (OperationChannelMultiplexerImpl.java:176)
>   Unknown.onUpdate_5 (OperationChannelMultiplexerImpl.java:506)
>   Unknown.onUpdate_6 (ViewChannelImpl.java:329)
>   Unknown.onWaveletUpdate_0 (RemoteWaveViewService.java:306)
>   Unknown.onWaveletUpdate (RemoteViewServiceMultiplexer.java:107)
>   Unknown.onMessage_3 (WaveWebSocketClient.java:144)
>   Unknown.onMessage_1 (WaveSocketFactory.java:65)
>   Unknown.onMessage (GWTSocketIOConnectionImpl.java:120)
>   Unknown.anonymous (GWTSocketIOConnectionImpl.java:17)
>   Unknown.apply (Impl.java:168)
>   Unknown.entry0 (Impl.java:214)
>   Unknown.anonymous (Impl.java:57)
>
> -Tad
>
> On Wed, Nov 24, 2010 at 11:38 AM, Alex North <[email protected]> wrote:
>
>> I think I've seen this before too. Can you reproduce it with a debug
>> client build so the stack trace makes a bit more sense?
>>
>> A.
>>
>> On 24 November 2010 18:47, Tad Glines <[email protected]> wrote:
>>
>>> I'm encountering a "shiny" when working with a wave with two
>>> participants.
>>>
>>> 1. Create a wave (user1), type some text in the blip then add user2.
>>> 2. When the wave appears in user2's inbox, open and create reply.
>>>
>>> 3. This "shiny" appears in user1's window.
>>>
>>> (TypeError): Result of expression 'cNd(this.b.b,this.d,b.b)' [undefined]
>>> is not an object. line: 161 sourceId: 4867844608 sourceURL:
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.htmlexpressionBeginOffset:
>>>  21147 expressionCaretOffset: 21171
>>> expressionEndOffset: 21173
>>>
>>> 4. Refresh user1's window and and send a reply and this "shiny" appears
>>> in user2's window.
>>>
>>> (TypeError): Cannot read property 'e' of undefined stack: TypeError:
>>> Cannot read property 'e' of undefined at Object.YFc [as Nf] (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:161:9366)
>>> at CBe (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:4790:77)
>>> at BBe (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:1722:22)
>>> at Rqe (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:1880:24)
>>> at Xve (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:3273:45)
>>> at Yve (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:4712:141)
>>> at Lqe (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:5261:80)
>>> at Object.uve [as ik] (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:5472:1783)
>>> at tue (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:4878:168)
>>> at Eue (
>>> http://demo.wave-in-a-box.org/webclient/5E6C106005DE89362267D9338C52FFBA.cache.html:4442:118)
>>> type: non_object_property_load arguments: e, Unknown.YFc (Unknown source:0)
>>> Unknown.CBe (Unknown source:0) Unknown.BBe (Unknown source:0) Unknown.Rqe
>>> (Unknown source:0) Unknown.Xve (Unknown source:0) Unknown.Yve (Unknown
>>> source:0) Unknown.Lqe (Unknown source:0) Unknown.uve (Unknown source:0)
>>> Unknown.tue (Unknown source:0) Unknown.Eue (Unknown source:0)
>>>
>>> -Tad
>>>
>>> --
>>> You received this message because you are subscribed to the Google Groups
>>> "Wave Protocol" group.
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected]<wave-protocol%[email protected]>
>>> .
>>> For more options, visit this group at
>>> http://groups.google.com/group/wave-protocol?hl=en.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Wave Protocol" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<wave-protocol%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/wave-protocol?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Wave Protocol" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<wave-protocol%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/wave-protocol?hl=en.
>



-- 
David Wang

-- 
You received this message because you are subscribed to the Google Groups "Wave 
Protocol" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/wave-protocol?hl=en.

Reply via email to