Mercurial > hg > monetdb-perl
comparison MonetDB-CLI-MapiPP/MonetDB/CLI/Mapi.pm @ 8:82175280837a
Fix blocksize for Mapi protocol: it's 8190 bytes and always has been.
author | Sjoerd Mullender <sjoerd@acm.org> |
---|---|
date | Mon, 19 Aug 2019 21:37:30 +0200 (2019-08-19) |
parents | a0ec9e080a5b |
children | 8c8bd15f7a0b |
comparison
equal
deleted
inserted
replaced
7:ff83458a625d | 8:82175280837a |
---|---|
431 @{ $self->{piggyback} } = (); | 431 @{ $self->{piggyback} } = (); |
432 | 432 |
433 # create blocks of data with max 0xffff length, | 433 # create blocks of data with max 0xffff length, |
434 # then loop over the data and send it. | 434 # then loop over the data and send it. |
435 my $out = ''; | 435 my $out = ''; |
436 my $blocksize = 8190; # max len per block | |
436 for my $blk (@blocks) { | 437 for my $blk (@blocks) { |
437 print "OUT:\n$$blk\n" if $ENV{MAPI_TRACE}; | 438 print "OUT:\n$$blk\n" if $ENV{MAPI_TRACE}; |
438 utf8::downgrade($$blk); # deny wide chars | 439 utf8::downgrade($$blk); # deny wide chars |
439 my $pos = 0; | 440 my $pos = 0; |
440 my $last_block = 0; | 441 my $last_block = 0; |
441 my $blocksize = 0x7fff >> 1; # max len per block | |
442 my $data; | 442 my $data; |
443 | 443 |
444 while ( !$last_block ) { | 444 while ( !$last_block ) { |
445 my $data = substr($$blk, 0, $blocksize, ""); | 445 my $data = substr($$blk, 0, $blocksize, ""); |
446 my $len = length($data); | 446 my $len = length($data); |