Skip to content

Conversation

@alexvanboxel
Copy link
Contributor

Underscore is a common used word delimiter in field names, the current
FieldSpecifierNotationLexer only support alpha-numeric values for field
name character.

The upcoming Protobuf schema support will emit underscores in the field
names, so field names should support underscore.

Underscore is a common used word delimiter in field names, the current
FieldSpecifierNotationLexer only support alpha-numeric values for field
name character.

The upcoming Protobuf schema support will emit underscores in the field
names, so field names should support underscore.
@alexvanboxel
Copy link
Contributor Author

@reuvenlax this PR would make it possible to use proto field names as they contain underscores in general. This would make the following code work:

            .apply(Filter.<FooBar>create().whereFieldName("test_name", u -> u.equals("abc")))
            .apply(Select.fieldNames("test_name"))
            .apply(ParDo.of(new DoFn<Row, String>() {

It seems that Filter works, but Select doesn't without the fix. Even so, I think the lexer is too restrictive and needs to be revised later on.

@reuvenlax reuvenlax merged commit 8304e94 into apache:master May 27, 2019
@alexvanboxel alexvanboxel deleted the feature/BEAM-7426-fieldspecifiednotationparser branch May 28, 2019 06:17
pl04351820 pushed a commit to pl04351820/beam that referenced this pull request Dec 20, 2023
Update Makefile test proto builder:

- Use new 'conformance_tests' repo.
- Handle updated file hierarchy, etc.

Use new JSON format in 'test_cross_language.py'.

- Copy in JSON testcase files from 'conformance-tests' repo.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants