Description | The issue is that Oracle makes a call back to the database for every lob field for every row. Because sym_data has three lobs, for every row that is extracted for either transport or routing the jdbc driver makes three calls back to the database. If the dbms_lob.substr function is used, then the values are streamed with the rest of the result set. The downside of this approach is that the data is limited to 4000 characters. As long as we have a good error message and the ability to turn this off at the channel level I think this is acceptable. Add a contains_large_lobs column on sym_channel. Default it to 0. If 0, then use the lob substring method in the data extraction and data routing queries. |
---|