Skip to content

New SummaryNode implementation#1609

Merged
bska merged 38 commits intoOPM:masterfrom
wito:new-summarynode
Mar 26, 2020
Merged

New SummaryNode implementation#1609
bska merged 38 commits intoOPM:masterfrom
wito:new-summarynode

Conversation

@wito
Copy link
Contributor

@wito wito commented Mar 19, 2020

This feature implements

  1. Opm::EclIO::SummaryNode
  2. Related changes to Opm::out::Summary

Opm::EclIO::SummaryNode is a lighter and more focused value object style struct than Opm::SummaryConfigNode, suitable for use in the Summary reader and writer arenas.

@wito
Copy link
Contributor Author

wito commented Mar 19, 2020

jenkins build this please

1 similar comment
@joakim-hove
Copy link
Member

jenkins build this please

Copy link
Member

@bska bska left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't approve this. The changes to Summary.cpp don't serve a purpose as far as I can tell. Do just the minimum needed to make it compile and leave the rest alone.

@joakim-hove
Copy link
Member

jenkins build this please

@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

@joakim-hove That's not really any point right now; there's a test error that I'm in the process of fixing.

@wito wito force-pushed the new-summarynode branch from 84fcbab to da79944 Compare March 20, 2020 08:59
@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

jenkins build this please

1 similar comment
@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

jenkins build this please

@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

@joakim-hove I'm having an issue getting this to build in Jenkins; something about the build system, I think, but I'm not entirely sure what I could have done to upset it. 🙁

@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

jenkins build this please

@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

@joakim-hove Looking into it, it seems as this will resolve itself once #1610 is resolved and I can rebase to the new head.

@bska
Copy link
Member

bska commented Mar 20, 2020

it seems as this will resolve itself once #1610 is resolved and I can rebase to the new head.

You need to rebase in any case. PR #1592 introduced a header and other changes in Summary.cpp.

@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

it seems as this will resolve itself once #1610 is resolved and I can rebase to the new head.

You need to rebase in any case. PR #1592 introduced a header and other changes in Summary.cpp.

Indeed I do, but as I'm working on macOS I can't really do so until #1610 is resolved.

@akva2
Copy link
Member

akva2 commented Mar 20, 2020

please confirm #1616 takes care of it

@wito wito force-pushed the new-summarynode branch from 64f0621 to f884c90 Compare March 20, 2020 13:25
@wito wito marked this pull request as ready for review March 20, 2020 13:27
@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

jenkins build this please

@wito wito force-pushed the new-summarynode branch 3 times, most recently from a36e5ce to 3bd4769 Compare March 20, 2020 14:31
@wito wito force-pushed the new-summarynode branch from 3bd4769 to 2c74b09 Compare March 20, 2020 14:34
@wito
Copy link
Contributor Author

wito commented Mar 20, 2020

jenkins build this please

@joakim-hove
Copy link
Member

@bska: You had some - reasonable - comments to this PR; could you take a new look and see if it can be merged now?

Copy link
Member

@bska bska left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is much better. I just have a couple of more comments and then I think this will be ready for merging.

const bool matched { std::regex_match(keyword, user_defined_regex) } ;
const bool blacklisted { udq_blacklist.find(keyword) != udq_blacklist.end() } ;

return matched && !blacklisted;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you consider writing this as

return !blacklisted && std::regex_match(keyword, user_defined_regex);

? That way, you don't incur the cost of regular expression matching for blacklisted keywords.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure, in this case, if that's worth it, given the domain of the function and the relative simplicity of the regular expression.

@bska
Copy link
Member

bska commented Mar 24, 2020

One more thing. I didn't expect to see SummaryNode.[hc]pp being added to PUBLIC_*_FILES twice. I guess it covers the case

ENABLE_ECL_INPUT AND (NOT ENABLE_ECL_OUTPUT)

but it still was surprising to me. Any suggestion on that aspect, @akva2?

@joakim-hove
Copy link
Member

This is much better. I just have a couple of more comments and then I think this will be ready for merging.

Thank you for getting back to this - we will fix the remaining points you raise.

@joakim-hove
Copy link
Member

I didn't expect to see SummaryNode.[hc]pp being added to PUBLIC_*_FILES twice.

I was also surprised by that; I concluded it was correct but would be happy to be proven wrong. Time to revisit: #1129?

@bska
Copy link
Member

bska commented Mar 26, 2020

jenkins build this please

@wito wito mentioned this pull request Mar 26, 2020
Copy link
Member

@bska bska left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates. This looks good to me now. I'll merge into master.

@bska bska merged commit 5a701a2 into OPM:master Mar 26, 2020
@wito wito deleted the new-summarynode branch March 26, 2020 11:47
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.

4 participants