I'm trying to tackle REQUEST_RECORD_LOAD as the first useful function in my PHP client. (I have the basics like connect and open, error handling, etc. working so far.)
This being a PHP client, one major concern for me, is to avoid parsing (with a state machine, as was necessary with the old format) since this is extremely inefficient in PHP - this is one reason I'm targeting OrientDB 2.0 and the new binary format exclusively, as this appears to make that possible (?) Unfortunately, the response format of REQUEST_RECORD_LOAD itself appears to make that impossible. [(payload-status:byte)[(record-content:bytes)(record-version:int)(record-type:byte)]*]+ In order to read sequentially over "record-content", I need to know the "record-type" in advance, so the order of this data appears to be wrong? I believe the record format of each payload chunk would need to backwards, basically: [(payload-status:byte)[(record-type:byte)(record-version:int)(record-content:bytes) ]*]+ Otherwise, I am forced to load the whole record-content into memory first, before I can know how to interpret the data. Or am I missing something here? Also, it appears the "record-content" is in the old CSV format, regardless of my having selected the new binary serialization format? Does the REQUEST_RECORD_LOAD command not support the new binary serialization format? Is it not supported everywhere yet? I really do not want a client that has to load and then parse in two stages - this adds considerable complexity, run-time overhead, and duplicates everything in-memory while loading. I'm probably doing something wrong or missing something obvious? -- --- You received this message because you are subscribed to the Google Groups "OrientDB" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
