From: Adriano d. S. F. <adr...@gm...> - 2010-01-08 19:51:46
|
Vlad Khorsun wrote: >> I did this changed, > > In README.exception_handling you wrote : > > ============= > The status vector is generated using that codes combination: > isc_except, <exception number>, > isc_formatted_exception, <formatted exception message>, > <defined exception message>, <exception parameters> > > Since new error code (isc_formatted_exception) is used, it's necessary that the client is v3.0 > or at least uses firebird.msg from v3.0 so that it can translate the status vector to string. > > ============= > > Why include both <formatted exception message> and <defined exception message> ? > Why not use isc_random for <formatted exception message> ? > You first insisted on use something different than isc_random. Now you insist the contrary? Just nitpicking or what? Both are included because the original message template may be interesting to the client code as well the parameters. >> it looks well, but since new code is introduced the >> older clients needs at least v3 firebird.msg. > > Do you think that someone will update firebird.msg but not fbclient.dll ? > What benefit for users of old client your last commit gives ? > Features that depend on updated client requires client updation or may not function totally correctly. *Any* new error message requires update of firebird.msg in the client, if you not know. Now the thing just works (of course, depending on message in firebird.msg). Any version since 2.0 may display the error message. No new semantics is inserted in the status vector, just ordinary parameters so any tool have no problem to understand it. >> If we don't want this, the >> message shall be encoded with isc_random. Currently, no special handling >> for isc_formatted_exception has necessary. >> >> We can also add isc_formatted_exception to firebird.msg of 2.0, 2.1 and >> 2.5 now, so next versions will be able to understand these exceptions. >> This look the better way to go for me. > > Sometime you make me think that you read only what you want to read, not > what others wrote :( Does you read my idea about syntax support ? Does you read > another idea about to fill status-vector depending of client version ? > I will not store isc_random in the status vector if client is < 3.0 and isc_formatted_exception when >= 3.0. It's not how things should work. If it's decided that should be isc_random, I change it to isc_random. If it's decided to insert the error code in others versions I will do. If nothing is decided I'll do nothing. Period. Adriano |