Archived

This forum has been archived. Please start a new discussion on GitHub.

Consumption has failed

Hi,
On client side (C#), I got sometimes the error below. I not sure where it come from.
Is this something related to "Ice.CacheMessageBuffers" which is set to 1 in .NET
and should bet set to 0 ?
(Ice 3.4.2)

Regards

Update Instrument GLM Consumption has failed Ice.ObjectNotExistException
   id.name = "140"
   id.category = ""
   facet = ""
   operation = "getGLMTokenDB"
  at IceInternal.ProxyFactory.checkRetryAfterException(LocalException ex, Reference ref, Boolean sleep, Int32& cnt)
  at Ice.ObjectPrxHelperBase.handleException__(ObjectDel_ delegate, LocalException ex, Boolean sleep, Int32& cnt)
  at ShieldIce.SessionPrxHelper.getGLMTokenDB(Dictionary`2 context__, Boolean explicitContext__)
  at ShieldIce.SessionPrxHelper.getGLMTokenDB()
  at Console.IceDAL.Requesters.GLMRequester.get_Proxy()
  at Console.IceDAL.Requesters.GLMRequester.UpdateInstrumentGLMConsumption(IObservableStringKeyTree`1 prices)

Comments

  • bernard
    bernard Jupiter, FL
    Hi David,

    The stack trace shows that your code calls operation getGLMTokenDB on an (your) object with ID "140", and get an Ice::ObjectNotExistException. This means that the target object adapter is listening but could not locate an object with this ID. You should review the code in your server.

    This is unrelated to Ice.CacheMessageBuffers.

    Best regards,
    Bernard
  • Ok thanks, I will check it.
  • I used a callback system (like the same name sample), here the client give an eventHandler with a method onEventPrice, which is called by the server when something change.

    Most of the time it works fine. But sometimes, I got this error (so the getGLMTokenDB is removed).
    On the client side, I checked that I used ice_timeout(-1) for the objectprx send to the server.
    Not sure where to look now (may be the prx is garbaged in C#?)
    -- 06/28/13 11:59:50.391 ./bin/Server: Protocol: sending request 
       message type = 0 (request)
       compression status = 0 (not compressed; do not compress response, if any)
       message size = 82
       request id = 387
       identity = Client
       facet = 
       operation = onEventPrice
       mode = 0 (normal)
       context = 
    -- 06/28/13 11:59:50.424 ./bin/Server: Protocol: received reply 
       message type = 2 (reply)
       compression status = 0 (not compressed; do not compress response, if any)
       message size = 229
       request id = 387
       reply status = 7 (unknown exception)
    [B]   unknown = System.NullReferenceException: Object reference not set to an instance of an object.
          at IceInternal.IncomingBase.handleException__(Exception exc) in c:\IceBuilds\VC9\Release\cs\src\Ice\Incoming.cs:line 212[/B]
    
  • benoit
    benoit Rennes, France
    Hi,

    It looks like a System.NullReferenceException exception is raised by the implementation of the onEventPrice method in your client.

    Unless you disabled dispatch warnings (with the Ice.Warn.Dispatch property), you should get a warning on the standard error output. The warning should show the stack trace of the exception. Do you get this warning?

    Cheers,
    Benoit.
  • Thanks.
    I will look at this point with the console developer next week