You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fixes: #11721
This PR:
- [x] Fixes: #11721, by not going through the fill & fill_inplace APIs which don't support `struct` and `list` columns.
- [x] Fixes an issue in caching while constructing a `struct` or `list` scalar as `list` & `dict` objects are not hashable and we were running into the following errors:
```python
In [9]: i = cudf.Scalar([10, 11])
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
File /nvme/0/pgali/envs/cudfdev/lib/python3.9/site-packages/cudf/core/scalar.py:51, in CachedScalarInstanceMeta.__call__(self, value, dtype)
49 try:
50 # try retrieving an instance from the cache:
---> 51 self.__instances.move_to_end(cache_key)
52 return self.__instances[cache_key]
KeyError: ([10, 11], <class 'list'>, None, <class 'NoneType'>)
During handling of the above exception, another exception occurred:
TypeError Traceback (most recent call last)
Cell In [9], line 1
----> 1 i = cudf.Scalar([10, 11])
File /nvme/0/pgali/envs/cudfdev/lib/python3.9/site-packages/cudf/core/scalar.py:57, in CachedScalarInstanceMeta.__call__(self, value, dtype)
53 except KeyError:
54 # if an instance couldn't be found in the cache,
55 # construct it and add to cache:
56 obj = super().__call__(value, dtype=dtype)
---> 57 self.__instances[cache_key] = obj
58 if len(self.__instances) > self.__maxsize:
59 self.__instances.popitem(last=False)
TypeError: unhashable type: 'list'
```
Authors:
- GALI PREM SAGAR (https://github.com/galipremsagar)
Approvers:
- Matthew Roeschke (https://github.com/mroeschke)
URL: #11760
Describe the bug
When we want to fill a
slice
of a series column of typestruct
orlist
, there is an error.Steps/Code to reproduce bug
Expected behavior
We should be able to fill the values without hitting the inplace replace methods of libcudf for these two types specifically.
Environment overview (please complete the following information)
Additional context
Required for #11718
The text was updated successfully, but these errors were encountered: