Пример #1
0
 @Override
 public void returnData(OrcEncodedColumnBatch ecb) {
   for (ColumnStreamData[] datas : ecb.getColumnData()) {
     if (datas == null) continue;
     for (ColumnStreamData data : datas) {
       if (data == null || data.decRef() != 0) continue;
       if (DebugUtils.isTraceLockingEnabled()) {
         for (MemoryBuffer buf : data.getCacheBuffers()) {
           LlapIoImpl.LOG.info("Unlocking " + buf + " at the end of processing");
         }
       }
       lowLevelCache.releaseBuffers(data.getCacheBuffers());
       CSD_POOL.offer(data);
     }
   }
   // We can offer ECB even with some streams not discarded; reset() will clear the arrays.
   ECB_POOL.offer(ecb);
 }
Пример #2
0
 @Override
 public void resetBeforeOffer(ColumnStreamData t) {
   t.reset();
 }