Sjoerd Mullender wrote:
> Wrong on (almost) all counts.  It's amazing.
Most of it is a concurrency conflict for which I warned upfront in an
email that checkins where pending.
I only removed the conflict lines that result from your (too-quick)
actions.

Moreover, it is more than just mclient code. It is proper handling
at all levels in a situation where different readers emerged
over time.
In particular the overloaded '?' in the MAL context and debugging.
None of the check-ins proofed that testing was carried even close
to this level.

> 
> Martin Kersten wrote:
>> Update of /cvsroot/monetdb/clients/src/mapiclient
>> In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv10235
>>
>> Modified Files:
>>      MapiClient.mx 
>> Log Message:
>> Move the mode change into one place. Set the default rendering of MAL to
> 
> This I had already done in the previous checkin, but better because more
> complete
Beginning of a debugging session can start any time, should be trapped
and was not done at all places. So be defensive.

> 
>> align with the console. Best option still is to make mclient part of
> 
> This is debatable.
> 
>> the server too. 
> 
> This has *nothing* to do with this checkin (and is debatable anyway).
It has to do with understanding of the implications of the functionality
provided.

> 
>>
>> Index: MapiClient.mx
>> ===================================================================
>> RCS file: /cvsroot/monetdb/clients/src/mapiclient/MapiClient.mx,v
>> retrieving revision 1.73
>> retrieving revision 1.74
>> diff -u -d -r1.73 -r1.74
>> --- MapiClient.mx    28 Aug 2007 07:43:07 -0000      1.73
>> +++ MapiClient.mx    28 Aug 2007 08:03:57 -0000      1.74
>> @@ -243,6 +243,15 @@
>>  }
>>  
>>  static void
>> +modeChange(char *reply){
>> +    if (strstr(reply, "mdb>#EOD")){
>> +            setPrompt();
>> +    } else
>> +    if(strncmp(reply,"mdb>",4)==0)
>> +            sprintf(promptbuf,"mdb>");
>> +}
>> +
>> +static void
>>  SQLsetSpecial(const char *command)
>>  {
>>      if (mode == SQL && command) {
>> @@ -371,6 +380,7 @@
>>      do {
>>              if ((reply = fetch_line(hdl)) == NULL)
>>                      return 0;
>> +            modeChange(reply);
>>      } while (*reply != '[' && *reply != '=');
>>      return mapi_split_line(hdl);
>>  }
> 
> Now the change is checked twice.
modechange was there, because row-fetch-line as
called in my version. This was not marked as a conflict.
> 
>> @@ -412,7 +422,8 @@
>>  {
>>      char *line;
>>  
>> -    while ((line = fetch_line(hdl)) != 0) {
>> +    while ((line = mapi_fetch_line(hdl)) != 0) {
>> +            modeChange(line);
>>              if (*line == '=')
>>                      line++;
>>              fprintf(toConsole, "%s\n", line);
> 
> Why did you undo my change which did this already?
> 
>> @@ -1310,7 +1321,7 @@
>>                                      continue;
>>                              }
>>                              case '?':
>> -                                    if (!isspace((int) line[2]) && mode == 
>> MAL) {
>> +                                    if (mode==MAL ||debugMode() ){
>>                                              strcpy(line, line + 1);
>>                                              break;
>>                                      }
> 
> This is the only part of the checkin that has merit, except a comment
> that the line with ? is sent to the server might be useful.
> 
>> @@ -1756,7 +1767,8 @@
>>  
>>      /* default formatter depends on whether we're interactive */
>>      if (formatter == NOformatter)
>> -            formatter = interactive && interactive_stdin && mode != XQUERY 
>> ? TABLEformatter : RAWformatter;
>> +            formatter = interactive && interactive_stdin && mode != XQUERY ?
>> +            (mode==MAL?RAWformatter: TABLEformatter) : RAWformatter;
>>  
>>      if (command) {
>>              /* execute from command-line */
>>
>>
> 
> If you really insist that in MAL mode the default should be RAW, then
> write it like this:
> 
> formatter = interactive && interactive_stdin && mode != XQUERY && mode
> != MAL ? TABLEformatter : RAWformatter;
> 
>> -------------------------------------------------------------------------
>> This SF.net email is sponsored by: Splunk Inc.
>> Still grepping through log files to find problems?  Stop.
>> Now Search log events and configuration files using AJAX and a browser.
>> Download your FREE copy of Splunk now >>  http://get.splunk.com/
>> _______________________________________________
>> Monetdb-checkins mailing list
>> [EMAIL PROTECTED]
>> https://lists.sourceforge.net/lists/listinfo/monetdb-checkins
> 
> 
> 
> ------------------------------------------------------------------------
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Monetdb-checkins mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/monetdb-checkins


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Monetdb-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-developers

Reply via email to