@@ -35,9 +35,9 @@ cdef class LobOpMessage(Message):
35
35
cdef:
36
36
uint32_t operation
37
37
BaseThinLobImpl source_lob_impl
38
- BaseThinLobImpl dest_lob_impl
39
38
uint64_t source_offset
40
39
uint64_t dest_offset
40
+ uint32_t dest_length
41
41
int64_t amount
42
42
bint send_amount
43
43
bint bool_flag
@@ -75,13 +75,9 @@ cdef class LobOpMessage(Message):
75
75
num_bytes = len (self .source_lob_impl._locator)
76
76
ptr = buf.read_raw_bytes(num_bytes)
77
77
self .source_lob_impl._locator = ptr[:num_bytes]
78
- if self .dest_lob_impl is not None :
79
- num_bytes = len (self .dest_lob_impl._locator)
80
- ptr = buf.read_raw_bytes(num_bytes)
81
- self .dest_lob_impl._locator = ptr[:num_bytes]
82
78
if self .operation == TNS_LOB_OP_CREATE_TEMP:
83
79
buf.skip_ub2() # skip character set
84
- buf.skip_raw_bytes( 3 ) # skip trailing flags, amount
80
+ buf.skip_ub1( ) # skip trailing flags
85
81
elif self .send_amount:
86
82
buf.read_sb8(& self .amount)
87
83
if self .operation in (TNS_LOB_OP_IS_OPEN,
@@ -99,12 +95,8 @@ cdef class LobOpMessage(Message):
99
95
else :
100
96
buf.write_uint8(1 ) # source pointer
101
97
buf.write_ub4(len (self .source_lob_impl._locator))
102
- if self .dest_lob_impl is None :
103
- buf.write_uint8(0 ) # dest pointer
104
- buf.write_ub4(0 ) # dest length
105
- else :
106
- buf.write_uint8(1 ) # dest pointer
107
- buf.write_ub4(len (self .dest_lob_impl._locator))
98
+ buf.write_uint8(0 ) # dest pointer
99
+ buf.write_ub4(self .dest_length)
108
100
buf.write_ub4(0 ) # short source offset
109
101
buf.write_ub4(0 ) # short dest offset
110
102
if self .operation == TNS_LOB_OP_CREATE_TEMP:
@@ -132,8 +124,6 @@ cdef class LobOpMessage(Message):
132
124
buf.write_uint16be(0 )
133
125
if self .source_lob_impl is not None :
134
126
buf.write_bytes(self .source_lob_impl._locator)
135
- if self .dest_lob_impl is not None :
136
- buf.write_bytes(self .dest_lob_impl._locator)
137
127
if self .operation == TNS_LOB_OP_CREATE_TEMP:
138
128
if self .source_lob_impl.dbtype._csfrm == CS_FORM_NCHAR:
139
129
buf._caps._check_ncharset_id()
0 commit comments