mirror of
https://github.com/apache/arrow.git
synced 2026-10-29 09:05:47 +08:00
Fixes.
This commit is contained in:
1 parent
0fc9ecfddb
commit
31b3cbee39
2 files changed
+19
-6
No files matched your search
@@ -23,12 +23,11 @@ import re
|
||||
import pandas.core.internals as _int
|
||||
import numpy as np
|
||||
import pandas as pd
|
||||
import pickle
|
||||
|
||||
import six
|
||||
|
||||
import pyarrow as pa
|
||||
from pyarrow.compat import PY2, zip_longest # noqa
|
||||
from pyarrow.compat import builtin_pickle, PY2, zip_longest # noqa
|
||||
|
||||
|
||||
def infer_dtype(column):
|
||||
@@ -433,7 +432,7 @@ def dataframe_to_serialized_dict(frame):
|
||||
# If we are dealing with an object array, pickle it instead.
|
||||
if isinstance(block, _int.ObjectBlock):
|
||||
block_data['object'] = None
|
||||
block_data['block'] = pickle.dumps(values)
|
||||
block_data['block'] = builtin_pickle.dumps(values)
|
||||
|
||||
blocks.append(block_data)
|
||||
|
||||
@@ -470,8 +469,8 @@ def _reconstruct_block(item):
|
||||
klass=_int.DatetimeTZBlock,
|
||||
dtype=dtype)
|
||||
elif 'object' in item:
|
||||
block = _int.make_block(pickle.loads(block_arr), placement=placement,
|
||||
klass=_int.ObjectBlock)
|
||||
block = _int.make_block(builtin_pickle.loads(block_arr),
|
||||
placement=placement, klass=_int.ObjectBlock)
|
||||
else:
|
||||
block = _int.make_block(block_arr, placement=placement)
|
||||
|
||||
|
||||
@@ -22,7 +22,8 @@ import sys
|
||||
import numpy as np
|
||||
|
||||
from pyarrow.compat import builtin_pickle
|
||||
from pyarrow.lib import SerializationContext, _default_serialization_context
|
||||
from pyarrow.lib import (SerializationContext, _default_serialization_context,
|
||||
frombuffer)
|
||||
|
||||
try:
|
||||
import cloudpickle
|
||||
@@ -43,6 +44,19 @@ def _deserialize_numpy_array_list(data):
|
||||
return np.array(data[0], dtype=np.dtype(data[1]))
|
||||
|
||||
|
||||
def _pickle_to_buffer(x):
|
||||
pickled = builtin_pickle.dumps(x, protocol=builtin_pickle.HIGHEST_PROTOCOL)
|
||||
return frombuffer(pickled)
|
||||
|
||||
|
||||
def _load_pickle_from_buffer(data):
|
||||
as_memoryview = memoryview(data)
|
||||
if six.PY2:
|
||||
return builtin_pickle.loads(as_memoryview.tobytes())
|
||||
else:
|
||||
return builtin_pickle.loads(as_memoryview)
|
||||
|
||||
|
||||
# ----------------------------------------------------------------------
|
||||
# pandas-specific serialization matters
|
||||
|
||||
|
||||
Reference in new issue
Block a user