[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=833311=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-833311 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 14/Dec/22 07:49 Start Date: 14/Dec/22 07:49 Worklog Time Spent: 10m Work Description: Simulant87 commented on PR #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1350566817 @garydgregory May I request another review, to get my PR merged? I think the PR is complete with a test covering the new code, no conflicts to the main branch, and the pipeline is green. Issue Time Tracking --- Worklog Id: (was: 833311) Time Spent: 1h 50m (was: 1h 40m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1h 50m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.10#820010)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=768703=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-768703 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 10/May/22 20:39 Start Date: 10/May/22 20:39 Worklog Time Spent: 10m Work Description: codecov-commenter commented on PR #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1122838755 # [Codecov](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=h1_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation) Report > Merging [#276](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=desc_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation) (3ac374a) into [master](https://codecov.io/gh/apache/commons-collections/commit/1677daceab74895fdf5056c9a48aa94f9e709fb9?el=desc_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation) (1677dac) will **increase** coverage by `0.01%`. > The diff coverage is `94.73%`. ```diff @@ Coverage Diff @@ ## master #276 +/- ## + Coverage 85.87% 85.88% +0.01% - Complexity 4676 4681 +5 Files 292 292 Lines 1346913488 +19 Branches 1955 1957 +2 + Hits 1156611584 +18 Misses 1326 1326 - Partials577 578 +1 ``` | [Impacted Files](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=tree_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation) | Coverage Δ | | |---|---|---| | [...e/commons/collections4/map/CaseInsensitiveMap.java](https://codecov.io/gh/apache/commons-collections/pull/276/diff?src=pr=tree_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation#diff-c3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2NvbW1vbnMvY29sbGVjdGlvbnM0L21hcC9DYXNlSW5zZW5zaXRpdmVNYXAuamF2YQ==) | `92.50% <94.73%> (+2.02%)` | :arrow_up: | -- [Continue to review full report at Codecov](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=continue_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta?utm_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=footer_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation). Last update [1677dac...3ac374a](https://codecov.io/gh/apache/commons-collections/pull/276?src=pr=lastupdated_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments?utm_medium=referral_source=github_content=comment_campaign=pr+comments_term=The+Apache+Software+Foundation). Issue Time Tracking --- Worklog Id: (was: 768703) Time Spent: 1h 40m (was: 1.5h) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1h 40m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}.
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=732671=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-732671 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 24/Feb/22 20:52 Start Date: 24/Feb/22 20:52 Worklog Time Spent: 10m Work Description: kinow commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1050253135 > Hello @kinow, I saw that you are able to merge in this repository in another recent PR. Would you also like to review my suggested changes in this PR, please? Sorry, busy with other pull requests & issues :disappointed_relieved: :bow: code looks good from a brief look, but would need more time to really understand the change and confirm it's a good improvement :+1: -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 732671) Time Spent: 1.5h (was: 1h 20m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1.5h > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=732639=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-732639 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 24/Feb/22 19:55 Start Date: 24/Feb/22 19:55 Worklog Time Spent: 10m Work Description: Simulant87 commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1050209446 Hello @kinow, I saw that you are able to merge in this repository in another recent PR. Would you also like to review my suggested changes in this PR, please? -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 732639) Time Spent: 1h 20m (was: 1h 10m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1h 20m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=732633=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-732633 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 24/Feb/22 19:51 Start Date: 24/Feb/22 19:51 Worklog Time Spent: 10m Work Description: Simulant87 commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1050206636 @freya022 thank you for your suggestion. This sounds like another high performance improvement. However it also sounds like the behaviour might slightly change in some edge cases. Something I expect the maintainers want to avoid and could cause a longer discussion. Therefore I would like to keep your suggestion separated from my changes. As my implementation does not cahnge the behaviour of the key conversion, it should be simpler to review and approve. I encourage your to create a ticket in [Jira](https://issues.apache.org/jira/projects/COLLECTIONS/issues) and create a separate pull request for that change. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 732633) Time Spent: 1h 10m (was: 1h) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1h 10m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=732552=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-732552 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 24/Feb/22 18:07 Start Date: 24/Feb/22 18:07 Worklog Time Spent: 10m Work Description: freya022 commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1050121979 I may also suggest changing the `convertKey` method to use `key.toString().toLowerCase(Locale.ROOT)` to convert the non-null key, instead of the char loop. Benefits include better performance (measured a 2 times increase on my pc), and this is more fitted for the use case, as per the [Character#toLowerCase documentation](https://docs.oracle.com/javase/7/docs/api/java/lang/Character.html#toLowerCase(char)): ``` In general, String.toLowerCase() should be used to map characters to lowercase. String case mapping methods have several benefits over Character case mapping methods. String case mapping methods can perform locale-sensitive mappings, context-sensitive mappings, and 1:M character mappings, whereas the Character case mapping methods cannot ``` -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 732552) Time Spent: 1h (was: 50m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 1h > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=726181=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-726181 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 14/Feb/22 09:04 Start Date: 14/Feb/22 09:04 Worklog Time Spent: 10m Work Description: Simulant87 commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1038825792 @garydgregory Thank you for the feedback. I added a test that verifies the `convertKey` method is only called once, which fails currently on the master branch without the production code changes provided. I kindly request another review. Please let me know if there is anything else missing. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 726181) Time Spent: 50m (was: 40m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 50m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=726180=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-726180 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 14/Feb/22 09:03 Start Date: 14/Feb/22 09:03 Worklog Time Spent: 10m Work Description: Simulant87 removed a comment on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1029455359 @garydgregory Thank you for the feedback. I added a test the verifies the `convertKey` method is only called once, which fails currently on the master branch without the production code changes provided. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 726180) Time Spent: 40m (was: 0.5h) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 40m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=720461=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-720461 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 03/Feb/22 22:20 Start Date: 03/Feb/22 22:20 Worklog Time Spent: 10m Work Description: Simulant87 commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1029455359 @garydgregory Thank you for the feedback. I added a test the verifies the `convertKey` method is only called once, which fails currently on the master branch without the production code changes provided. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 720461) Time Spent: 0.5h (was: 20m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 0.5h > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=720405=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-720405 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 03/Feb/22 21:01 Start Date: 03/Feb/22 21:01 Worklog Time Spent: 10m Work Description: garydgregory commented on pull request #276: URL: https://github.com/apache/commons-collections/pull/276#issuecomment-1029397096 Hello @Simulant87 You'll need to add a test case to this PR that shows at least one failing test when run without the main changes. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 720405) Time Spent: 20m (was: 10m) > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Simulant >Priority: Minor > Labels: performance > Time Spent: 20m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap}} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. > Depending on the {{toString()}} implementation of the key and the resulting > length of the key before the lower case conversion the operation can get > expensive and should not be called twice, as the {{CaseInsensitiveMap}} > overwrites the {{convertKey(key)}} method and makes it more expensive and > depending on the input unlike in the implementation of the > {{AbstractHashedMap}}. -- This message was sent by Atlassian Jira (v8.20.1#820001)
[jira] [Work logged] (COLLECTIONS-803) CaseInsensitiveMap prevent duplicate key conversion on put
[ https://issues.apache.org/jira/browse/COLLECTIONS-803?focusedWorklogId=720383=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-720383 ] ASF GitHub Bot logged work on COLLECTIONS-803: -- Author: ASF GitHub Bot Created on: 03/Feb/22 20:08 Start Date: 03/Feb/22 20:08 Worklog Time Spent: 10m Work Description: Simulant87 opened a new pull request #276: URL: https://github.com/apache/commons-collections/pull/276 Improves the performance by re-using the once converted key again when creating a new entry. -- 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: issues-unsubscr...@commons.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking --- Worklog Id: (was: 720383) Remaining Estimate: 0h Time Spent: 10m > CaseInsensitiveMap prevent duplicate key conversion on put > -- > > Key: COLLECTIONS-803 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-803 > Project: Commons Collections > Issue Type: Improvement > Components: Map >Affects Versions: 4.4 >Reporter: Nils Faupel >Priority: Minor > Labels: performance > Time Spent: 10m > Remaining Estimate: 0h > > When adding a new item into a {{CaseInsensitiveMap }} the {{convertKey(key)}} > method is called twice, once in the {{put(key, value)}} method and second in > the {{createEntry(next, hashCode, key, value)}} method. The result could be > re-used resulting in a better performance. Depending on the {{toString()}} > implementation of the key and the resulting length of the key before the > lower case conversion the operation can get expensive and should not be > called twice. -- This message was sent by Atlassian Jira (v8.20.1#820001)