av9ash/GitBugs huggingface dataset:
Bug: Add tests for options from `to_csv` and `from_csv`.
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 27/Apr/22 04:32
Affects Version/s: 3.4.0

There are many supported options for to_json and from_json (https://spark.apache.org/docs/latest/sql-data-sources-csv.html#data-source-option), but they are currently not tested.

We should test for options to `sql/core/src/test/scala/org/apache/spark/sql/CsvFunctionsSuite.scala`.
Bug: Refresh dtype when astype("category")
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 07/Apr/22 15:00
Affects Version/s: 3.4.0

{code:java}
ERROR [1.717s]: test_astype (pyspark.pandas.tests.data_type_ops.test_boolean_ops.BooleanExtensionOpsTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/__w/spark/spark/python/pyspark/testing/pandasutils.py", line 121, in assertPandasEqual
    assert_series_equal(
  File "/usr/local/lib/python3.9/dist-packages/pandas/_testing/asserters.py", line 1019, in assert_series_equal
    assert_attr_equal("dtype", left, right, obj=f"Attributes of {obj}")
  File "/usr/local/lib/python3.9/dist-packages/pandas/_testing/asserters.py", line 506, in assert_attr_equal
    raise_assert_detail(obj, msg, left_attr, right_attr)
AssertionError: Attributes of Series are differentAttribute "dtype" are different
[left]:  CategoricalDtype(categories=[False, True], ordered=False)
[right]: CategoricalDtype(categories=[False, True], ordered=False)The above exception was the direct cause of the following exception:Traceback (most recent call last):
  File "/__w/spark/spark/python/pyspark/pandas/tests/data_type_ops/test_boolean_ops.py", line 746, in test_astype
    self.assert_eq(pser.astype("category"), psser.astype("category"))
  File "/__w/spark/spark/python/pyspark/testing/pandasutils.py", line 229, in assert_eq
    self.assertPandasEqual(lobj, robj, check_exact=check_exact)
  File "/__w/spark/spark/python/pyspark/testing/pandasutils.py", line 134, in assertPandasEqual
    raise AssertionError(msg) from e
AssertionError: Attributes of Series are differentAttribute "dtype" are different
[left]:  CategoricalDtype(categories=[False, True], ordered=False)
[right]: CategoricalDtype(categories=[False, True], ordered=False)Left:
Name: this, dtype: category
Categories (2, boolean): [False, True]
categoryRight:
Name: this, dtype: category
Categories (2, object): [False, True]
category {code}
Bug: Skip reporting test results if triggering workflow was skipped
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 27/Apr/22 08:03
Affects Version/s: 3.4.0

The `"Report test results"` workflow is triggered when either `"Build and test"` or `"Build and test (ANSI)"` complete. On fork repositories, workflow `"Build and test (ANSI)"` is always skipped.

The triggered `"Report test results"` workflow downloads artifacts from the triggering workflow and errors because there are none artifacts.

Therefore, the `"Report test results"` workflow should be skipped when the triggering workflow completed with conclusion `'skipped'`.
Bug: Pandas API - "PerformanceWarning: DataFrame is highly fragmented." get printed many times. 
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 21/Apr/22 17:59
Affects Version/s: 3.3.0

I add a file and a notebook with the info msg I get when I run df.info()

Spark master build from 13.04.22.

df.shape
(763300, 224)
Bug: Skip build-and-test workflow on forks when scheduled
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 20/Apr/22 17:30
Affects Version/s: 3.4.0

The `build and test` workflow is scheduled to run six times a day. The jobs then only run for `type == 'scheduled'` inside apache/spark repository, not for forks. However, the `precondition` job always runs, even though all subsequent jobs are skipped on forks.

The `precondition` job in the `build-and-test` workflow should be skipped on fork repositories as all subsequent / dependent jobs are already skipped.
Bug: spark-sql. overwrite. hive table-duplicate records
Status: Resolved | Priority: Major | Resolution: Invalid
Created: 21/Apr/22 02:34
Affects Version/s: 3.2.1

It occured duplicate records when spark-sql overwrite hive table . when spark job has failure stages,but dateframe has no duplicate records? when I run the job again, the reasult is correct.It confused me.why?

eg: dataFrame.write().mode(SaveMode.Overwrite).insertInto("outputTable");

no duplicate records in dataFrame, but duplicate records existed in hive outputTable
Bug: Add k8s Scheduling, Preemption and Eviction feature to apache spark
Status: Resolved | Priority: Major | Resolution: Duplicate
Created: 26/Apr/22 10:26
Affects Version/s: 3.2.1

As [https://kubernetes.io/docs/concepts/scheduling-eviction/] show, apache spark lacks of support for k8s scheduling, preemption and eviction.

This issue wants to support toleration/priorityClass/runtimeClass etc , more information please refer 

[https://kubernetes.io/docs/concepts/scheduling-eviction/] 

[https://kubernetes.io/docs/concepts/scheduling-eviction/kube-scheduler/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/pod-priority-preemption/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/node-pressure-eviction/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/api-eviction/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/resource-bin-packing/]

[https://kubernetes.io/docs/concepts/scheduling-eviction/scheduling-framework/]

https://kubernetes.io/docs/concepts/scheduling-eviction/scheduler-perf-tuning/
Bug: test_nsmallest test failed tue to pandas 1.4.0-1.4.2 bug
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 07/Apr/22 15:06
Affects Version/s: 3.4.0

[https://github.com/apache/spark/blob/becda3339381b3975ed567c156260eda036d7a1b/python/pyspark/pandas/tests/test_dataframe.py#L1829]

 

After [https://github.com/pandas-dev/pandas/issues/46589] fixed, we need skip L1829 from v1.4.0 to v1.4.x

 

DataFrameTest.test_nsmallest failed

DataFrameTest.test_nlargest failed
Bug: Document which options are unsupported in CSV and JSON functions
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 23/Apr/22 07:53
Affects Version/s: 3.3.0

See https://github.com/apache/spark/pull/36294. Some of CSV and JSON options don't work in expressions because some of them are plan-wise options like parseMode = DROPMALFORMED.

We should document that which options are not working. possibly we should also throw an exception.
Bug: Run Pandas on Spark with Pandas 1.4.x
Status: Open | Priority: Major | Resolution: 
Created: 07/Apr/22 14:55
Affects Version/s: 3.4.0

This is a umbrella to track issues when pandas upgrade to 1.4.x

 

I disable the fast-failed in test, 19 failed:

[https://github.com/Yikun/spark/pull/88/checks?check_run_id=5873627048]
Bug: Unexpected commutative property of udf/pandas_udf and filters
Status: Open | Priority: Major | Resolution: 
Created: 21/Apr/22 09:49
Affects Version/s: 3.2.1

Hello all,
When running the attached minmal working example in the attachments, the order of the filter and the UDF is swapped by the optimizer. This can lead to errors, which are difficult to debug. In the documentation I have found no reference to such behavior. 

Is this a bug or a functionality which is poorly documented?

With kind regards,
Max
Bug: support jdbc about greenplum more
Status: Resolved | Priority: Major | Resolution: Invalid
Created: 21/Apr/22 02:04
Affects Version/s: 3.2.1

the code as:

Dataset<Row> invoke = spark.read().format("jdbc").option("url", url)
.option("dbtable", query)
.option("partitionColumn", "id")
.option("numPartitions", "5")
.option("lowerBound", Long.MIN_VALUE)
.option("upperBound", Long.MAX_VALUE)
.load();

when the gp table is a large table,oom will occur

how can handle the large table?
Bug: Add an Python example of StreamingQueryListener
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 22/Apr/22 03:52
Affects Version/s: 3.4.0

SPARK-38759 added the {{StreamingQueryListener}} support in Python. We should also add an example at https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#reporting-metrics-programmatically-using-asynchronous-apis
Bug: test_multi_index_dtypes failed due to index mismatch
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 28/Apr/22 07:32
Affects Version/s: 3.4.0

{code:java}
DataFrameTest.test_multi_index_dtypesSeries.index are different

Series.index classes are different
[left]:  MultiIndex([('zero',  'first'),
            ( 'one', 'second')],
           )
[right]: Index([('zero', 'first'), ('one', 'second')], dtype='object')

Left:
zero  first      int64
one   second    object
dtype: object
object

Right:
(zero, first)     int64
(one, second)    object
dtype: object
object {code}
Bug: Fix CI for fork branches in-sync with upstream master
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 20/Apr/22 08:29
Affects Version/s: 3.4.0

Whenever I sync my fork master from upstream Apache master, CI fails: https://github.com/G-Research/spark/runs/5972229542?check_suite_focus=true

```
From https://github.com/G-Research/spark
 * branch                  master     -> FETCH_HEAD
Already up to date. (nothing to squash)
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
Error: Process completed with exit code 1.
```

Since my fork master is without changes, the `git commit` fails. This is annoying.

The same issue makes the scheduled build and test workflow fail multiple times a day.
Bug: Low cost DataFrame schema swap util
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 14/Apr/22 18:49
Affects Version/s: 3.2.1

This question is related to [https://stackoverflow.com/a/37090151/1661491]. Let's assume I have a pyspark DataFrame with certain schema, and I would like to overwrite that schema with a new schema that I *know* is compatible, I could do:
{code:python}
df: DataFrame
new_schema = ...

df.rdd.toDF(schema=new_schema)
{code}
Unfortunately this triggers computation as described in the link above. Is there a way to do that at the metadata level (or lazy), without eagerly triggering computation or conversions?

Edit, note:
 * the schema can be arbitrarily complicated (nested etc)
 * new schema includes updates to description, nullability and additional metadata (bonus points for updates to the type)
 * I would like to avoid writing a custom query expression generator, *unless* there's one already built into Spark that can generate query based on the schema/{{{}StructType{}}}

Copied from: [https://stackoverflow.com/questions/71610435/how-to-overwrite-pyspark-dataframe-schema-without-data-scan]

See POC of workaround/util in [https://github.com/ravwojdyla/spark-schema-utils]

Also posted in [https://lists.apache.org/thread/5ds0f7chzp1s3h10tvjm3r96g769rvpj]
Bug: Upgrade Python black in /dev/reformat-python
Status: Resolved | Priority: Major | Resolution: Workaround
Created: 06/Apr/22 21:01
Affects Version/s: 3.4.0

There are some problems with Python Black [https://github.com/psf/black/issues/2964|https://github.com/psf/black/issues/2964]

And we have BLACK_VERSION="21.12b0" hard coded in `/dev/reformat-python`

python -m black

Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/bjorn/.local/lib/python3.10/site-packages/black/__main__.py", line 3, in <module>
    patched_main()
  File "/home/bjorn/.local/lib/python3.10/site-packages/black/__init__.py", line 1372, in patched_main
    patch_click()
  File "/home/bjorn/.local/lib/python3.10/site-packages/black/__init__.py", line 1358, in patch_click
    from click import _unicodefun
ImportError: cannot import name '_unicodefun' from 'click' (/usr/lib/python3.10/site-packages/click/__init__.py)
Bug: Fix the UT of schema equal assert
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 14/Apr/22 02:29
Affects Version/s: 3.2.1

in ParquetPartitionDiscoverySuite, there are some assert have no practical significance.
{code:java}
assert(input.schema.sameType(input.schema)) {code}
for check the UT, this assert should be fix to assert the actual result.
Bug: Support Groupby positional indexing
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 19/Apr/22 12:44
Affects Version/s: 3.4.0

{code:java}
GroupByTest.test_tail
GroupByTest.test_head {code}
[1] [https://pandas.pydata.org/docs/whatsnew/v1.4.0.html#groupby-positional-indexing]

[2][https://github.com/pandas-dev/pandas/pull/42947]
Bug: Incorrect result of dataset reduceGroups in java
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 07/Apr/22 17:50
Affects Version/s: 3.3.0

{code:java}
  @Data
  @NoArgsConstructor
  @AllArgsConstructor
  public static class Item implements Serializable {
    private String x;
    private String y;
    private int z;

    public Item addZ(int z) {
      return new Item(x, y, this.z + z);
    }
  } {code}
{code:java}
List<Item> items = List.of(
 new Item("X1", "Y1", 1),
 new Item("X2", "Y1", 1),
 new Item("X1", "Y1", 1),
 new Item("X2", "Y1", 1),
 new Item("X3", "Y1", 1),
 new Item("X1", "Y1", 1),
 new Item("X1", "Y2", 1),
 new Item("X2", "Y1", 1)); 

Dataset<Item> ds = spark.createDataFrame(items, Item.class).as(Encoders.bean(Item.class)); 
ds.groupByKey((MapFunction<Item, Tuple2<String, String>>) item -> Tuple2.apply(item.getX(), item.getY()),
    Encoders.tuple(Encoders.STRING(), Encoders.STRING())) 
.reduceGroups((ReduceFunction<Item>) (item1, item2) -> 
  item1.addZ(item2.getZ()))
 .show(10);
{code}
result is
{noformat}
+--------+----------------------------------------------+
|     key|ReduceAggregator(poc.job.JavaSparkReduce$Item)|
+--------+----------------------------------------------+
|{X1, Y1}|                                   {X2, Y1, 2}|-- expected 3
|{X2, Y1}|                                   {X2, Y1, 2}|-- expected 3
|{X1, Y2}|                                   {X2, Y1, 1}|
|{X3, Y1}|                                   {X2, Y1, 1}|
+--------+----------------------------------------------+{noformat}
pay attention that key doesn't mach with value
Bug: Failed to build python docker images due to .cache not found
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 14/Apr/22 09:40
Affects Version/s: 3.4.0

rm: cannot remove '/root/.cache': No such file or directory

Related:

[https://github.com/volcano-sh/volcano/runs/6020604500?check_suite_focus=true#step:10:2381]
Bug: Test SourceProgress in PySpark
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 14/Apr/22 04:27
Affects Version/s: 3.4.0

There was a mistake and we're not testing SourceProgress (see https://app.codecov.io/gh/apache/spark/blob/master/python/pyspark/sql/streaming/listener.py) We should probably test it.
Bug: Incorrect results or NPE when using Inline function against an array of dynamically created structs
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 29/Apr/22 00:24
Affects Version/s: 3.2.1

The following query returns incorrect results:
{noformat}
spark-sql> select inline(array(named_struct('a', 1, 'b', 2), null));
1	2
-1	-1
Time taken: 4.053 seconds, Fetched 2 row(s)
spark-sql>
{noformat}
In Hive, the last row is {{NULL, NULL}}:
{noformat}
Beeline version 2.3.9 by Apache Hive
0: jdbc:hive2://localhost:10000> select inline(array(named_struct('a', 1, 'b', 2), null));
+-------+-------+
|   a   |   b   |
+-------+-------+
| 1     | 2     |
| NULL  | NULL  |
+-------+-------+
2 rows selected (1.355 seconds)
0: jdbc:hive2://localhost:10000> 
{noformat}
If the struct has string fields, you get a {{NullPointerException}}:
{noformat}
spark-sql> select inline(array(named_struct('a', '1', 'b', '2'), null));
22/04/28 16:51:54 ERROR Executor: Exception in task 0.0 in stage 2.0 (TID 2)
java.lang.NullPointerException: null
	at org.apache.spark.sql.catalyst.expressions.codegen.UnsafeWriter.write(UnsafeWriter.java:110) ~[spark-catalyst_2.12-3.4.0-SNAPSHOT.jar:3.4.0-SNAPSHOT]
	at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage1.generate_doConsume_0$(Unknown Source) ~[?:?]
	at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage1.processNext(Unknown Source) ~[?:?]
	at org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43) ~[spark-sql_2.12-3.4.0-SNAPSHOT.jar:3.4.0-SNAPSHOT]
{noformat}

You can work around the issue by casting the null entry of the array:
{noformat}
spark-sql> select inline(array(named_struct('a', 1, 'b', 2), cast(null as struct<a:int, b:int>)));
1	2
NULL	NULL
Time taken: 0.068 seconds, Fetched 2 row(s)
spark-sql>
{noformat}

As far as I can tell, this issue only happens with arrays of structs where the structs are created in an inline table or in a projection.

The fields of the struct are not getting set to {{nullable = true}} when there is no example in the array where the field is set to {{null}}. As a result, {{GenerateUnsafeProjection.createCode}} generates bad code: it has no code to create a row of null columns, so it just creates a row from variables set with default values.
Bug: Invalid column name while querying bit type column in MSSQL
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 13/Apr/22 17:58
Affects Version/s: 3.3.0

After https://issues.apache.org/jira/browse/SPARK-36644 boolean column filters can be pushed to data sources. However, MSSQL only accepts bit type columns, and the current JDBC dialect for MSSQL does not compile the boolean type values in the pushed predicates into the bit type.
Bug: series name should be preserved in series.mode()
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 11/Apr/22 09:36
Affects Version/s: 3.4.0

[https://github.com/pandas-dev/pandas/issues/46737]

We might want to skip this test in 1.4.1-1.4.3 after pandas confirmed it's a issue.

 

update:

Pandas community confirmed it's a unexpected but right changes, so series name should be preserved in pser.mode().
Bug: Raise indexError when insert loc is out of bounds
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 07/Apr/22 15:40
Affects Version/s: 3.4.0

 

[https://github.com/apache/spark/blob/becda3339381b3975ed567c156260eda036d7a1b/python/pyspark/pandas/tests/indexes/test_base.py#L2179]

 

we need to raise indexError when out of bounds for axis, and also change test case

 
 - Related changes:
- panda 1.4.0+ is using numpy insert: https://github.com/pandas-dev/pandas/commit/c021d33ecf0e096a186edb731964767e9288a875
- Since numpy 1.8 (10 years ago https://github.com/numpy/numpy/commit/908e06c3c465434023649b0ca522836580c5cfdc) : [`out-of-bound indices will generate an error.`](https://numpy.org/devdocs/release/1.8.0-notes.html#changes)
Bug: The usage logger attachment logic should handle static methods properly.
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 12/Apr/22 21:55
Affects Version/s: 3.2.1

The usage logger attachment logic has an issue when handling static methods.

For example,

{code}
$ PYSPARK_PANDAS_USAGE_LOGGER=pyspark.pandas.usage_logging.usage_logger ./bin/pyspark
{code}

{code:python}
>>> import pyspark.pandas as ps
>>> psdf = ps.DataFrame({"a": [1,2,3], "b": [4,5,6]})
>>> psdf.from_records([(1, 2), (3, 4)])
A function `DataFrame.from_records(data, index, exclude, columns, coerce_float, nrows)` was failed after 2007.430 ms: 0
Traceback (most recent call last):
...
{code}

without usage logger:

{code:python}
>>> import pyspark.pandas as ps
>>> psdf = ps.DataFrame({"a": [1,2,3], "b": [4,5,6]})
>>> psdf.from_records([(1, 2), (3, 4)])
   0  1
0  1  2
1  3  4
{code}
Bug: impl Series.interpolate and DataFrame.interpolate
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 10/Apr/22 04:04
Affects Version/s: 3.4.0

h2. Goal:

[pandas's interpolate|https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.interpolate.html] supports many methods, _linear_ is applied by default, other methods ( _pad_ _ffill_ _backfill_ _bifll_ ) can also be implemented in pandas API on spark.

The remainder ones ( including _quadratic_ _cubic_ _spline_ ) can not be implemented easily since scipy is used internally and the window frame used is complex.

Since methods ( _pad_ _ffill_ _backfill_ _bifll_ ) were already implemented in pandas API on spark via {_}fillna{_}, so this work currently focus on implementing the missing *linear interpolation*
h2.  
h2. Impl:

To implement the linear interpolation, two extra window functions are added, one ( _null_index_ ) is to compute the indices of missing values in each consecutive seq, the other ({_}last_not_null{_}) is to keep the last no-missing value.
||index||value||_null_index_forward_||_last_not_null_forward_||_null_index_backward_||_last_not_null_backward_||filled||filled (limit=1)||
|1|nan|1|nan|1|1|-|-|
|2|1|0|1|0|1| | |
|3|nan|1|1|3|5|2.0|2.0|
|4|nan|2|1|2|5|3.0|-|
|5|nan|3|1|1|5|4.0|-|
|6|5|0|5|0|5| | |
|7|6|0|6|0|6| | |
|8|nan|1|6|2|nan|6.0|6.0|
|9|nan|2|6|1|nan|6.0|-|
 * for the NANs at indices (3,4,5), we always compute the filled value via

({_}last_not_null_backward{_} - {_}last_not_null_forward{_}) / ({_}null_index_forward{_} + {_}null_index_backward{_}) * _null_index_forward_ + _last_not_null_forward_

 * for the NaN at index(1), skip it due to the default *limit_direction* = _forward_

 * for the NaN at index(8), fill it like _ffill_ with vlaue _last_not_null_forward_

 * If _limit_ is set, then NaNs with _null_index_forward_ greater than _limit_ will not be interpolated.

h2. Plan

1, impl the basic _linear interpolate_ with param _limit_

2, add param _limit_direction_

3, add param _limit_area_
Bug: PySpark applyInPandas should allow to return empty DataFrame without columns
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 08/Apr/22 12:35
Affects Version/s: 3.4.0

Currently, returning an empty Pandas DataFrame from {{applyInPandas}} raises an error:

{noformat}
RuntimeError: Number of columns of the returned pandas.DataFrame doesn't match specified schema. Expected: 2 Actual: 0
{noformat}

Here is an example:
{code}
import pandas as pd  

from pyspark.sql.functions import pandas_udf, ceil

df = spark.createDataFrame(
    [(1, 1.0), (1, 2.0), (2, 3.0), (2, 5.0), (2, 10.0)],
    ("id", "v"))  

def mean_func(key, pdf):
    if key == (1,):
        return pd.DataFrame([])
    else:
        return pd.DataFrame([key + (pdf.v.mean(),)])

df.groupby('id').applyInPandas(mean_func, schema="id long, v double").show()
{code}

Since the schema is defined when calling {{applyInPandas()}}, it looks redundant to define the columns when returning an empty {{pd.DataFrame}}. Returning a non-empty DataFrame does not require defining columns, so returning an empty DataFrame shouldn't require that either.
Bug: iloc setitem failed due to "Cannot convert * into bool"
Status: Resolved | Priority: Major | Resolution: Fixed
Created: 11/Apr/22 12:20
Affects Version/s: 3.4.0

 

- OpsOnDiffFramesEnabledTest.test_frame_iloc_setitem
- OpsOnDiffFramesEnabledTest.test_series_iloc_setitem
- IndexingTest.test_series_iloc_setitem 

failed due to "Cannot convert column into bool: please use '&' for 'and', '|' for 'or', '~' for 'not' when building DataFrame boolean expressions."

 

- IndexingTest.test_frame_iloc_setitem

failed due to "shape mismatch" does not match "Cannot convert column into bool: please use '&' for 'and', '|' for 'or', '~' for 'not' when building DataFrame boolean expressions."