derrickaw commented on code in PR #38484:
URL: https://github.com/apache/beam/pull/38484#discussion_r3250559391
##########
sdks/python/apache_beam/dataframe/io.py:
##########
@@ -680,17 +680,26 @@ def __init__(
self.binary = binary
def expand(self, pcoll):
- if 'file_naming' in self.kwargs:
+ kwargs = dict(self.kwargs)
+ if 'file_naming' in kwargs:
dir, name = self.path, ''
else:
dir, name = io.filesystems.FileSystems.split(self.path)
+ num_shards = kwargs.pop('num_shards', None)
+ max_writers_per_bundle = kwargs.pop('max_writers_per_bundle', None)
+ write_to_files_kwargs = {}
+ if num_shards is not None:
+ write_to_files_kwargs['shards'] = num_shards
+ write_to_files_kwargs['max_writers_per_bundle'] = (
+ max_writers_per_bundle if max_writers_per_bundle is not None else 0)
+ elif max_writers_per_bundle is not None:
+ write_to_files_kwargs['max_writers_per_bundle'] = max_writers_per_bundle
return pcoll | fileio.WriteToFiles(
path=dir,
- shards=self.kwargs.pop('num_shards', None),
- file_naming=self.kwargs.pop(
- 'file_naming', fileio.default_file_naming(name)),
+ file_naming=kwargs.pop('file_naming',
fileio.default_file_naming(name)),
sink=lambda _: _WriteToPandasFileSink(
- self.writer, self.args, self.kwargs, self.incremental,
self.binary))
+ self.writer, self.args, kwargs, self.incremental, self.binary),
Review Comment:
fair point, done
##########
sdks/python/apache_beam/dataframe/io.py:
##########
@@ -680,17 +680,26 @@ def __init__(
self.binary = binary
def expand(self, pcoll):
- if 'file_naming' in self.kwargs:
+ kwargs = dict(self.kwargs)
+ if 'file_naming' in kwargs:
dir, name = self.path, ''
else:
dir, name = io.filesystems.FileSystems.split(self.path)
+ num_shards = kwargs.pop('num_shards', None)
+ max_writers_per_bundle = kwargs.pop('max_writers_per_bundle', None)
+ write_to_files_kwargs = {}
+ if num_shards is not None:
+ write_to_files_kwargs['shards'] = num_shards
+ write_to_files_kwargs['max_writers_per_bundle'] = (
+ max_writers_per_bundle if max_writers_per_bundle is not None else 0)
Review Comment:
done
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]