Skip to content

Fix NullPointerException when deserialize tags of span#228

Closed
ascrutae wants to merge 1 commit into
apache:masterfrom
ascrutae:zhangxin/fix/tags-init-error
Closed

Fix NullPointerException when deserialize tags of span#228
ascrutae wants to merge 1 commit into
apache:masterfrom
ascrutae:zhangxin/fix/tags-init-error

Conversation

@ascrutae
Copy link
Copy Markdown
Member

If Span does not have tagsWithBool , the serialization data does not contain tagsWithBool data, and the collector does not initialize the tagsWithBool field during deserialize, and it will cause NullPointerException when operation tagsWithBool field.

@coveralls
Copy link
Copy Markdown

Coverage Status

Coverage decreased (-0.3%) to 69.073% when pulling 0c73438 on ascrutae:zhangxin/fix/tags-init-error into eb82d2c on wu-sheng:master.

Copy link
Copy Markdown
Member

@wu-sheng wu-sheng left a comment

Choose a reason for hiding this comment

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

I prefer to fix this by higher performance way. e.g. add get method for reading tags. Initialize all maps cost a log gc and memory. cc @pengys5

@wu-sheng
Copy link
Copy Markdown
Member

And this may triggrt UI bug too. Please check it.

@wu-sheng
Copy link
Copy Markdown
Member

Because milestone has been changed. No need to support this.

@wu-sheng wu-sheng closed this Jun 27, 2017
lu-xiaoshuang pushed a commit to lu-xiaoshuang/skywalking that referenced this pull request Aug 12, 2024
* update witness class in elasticsearch-6.x-plugin

* update test cases in elasticsearch-6.x-plugin

* update the supported list

Co-authored-by: xzy <xiongzheyuan@shouqianba.com>
wu-sheng added a commit that referenced this pull request Jun 4, 2026
* Migrate e2e admin-API curl calls to swctl admin commands

Replace raw curl interactions with the OAP admin-server REST host (port 17128)
across the e2e suite with the new 'swctl admin ...' command tree
(skywalking-cli #228, commit b447211):

- runtime-rule flows (mal/lal/cluster) -> swctl admin runtime-rule ...
- dsl-debug flows (oal/mal/lal-block/lal-statement) -> swctl admin dsl-debug ...
- ui-management -> swctl admin ui-template ...
- storage inspect/config(dump,ttl) -> swctl admin inspect|config ...

--display json/yaml keeps response bodies parseable by the existing jq/yq
assertions; runtime-rule negative paths assert the CLI's typed error envelope
(HTTP <code> (<applyStatus>)). config-dump.yml is regenerated as the JSON
string-map that 'admin config dump' returns. Bumps SW_CTL_COMMIT to the
admin-capable commit. Non-admin curls (BanyanDB probe, self-telemetry, alarm
webhook) are intentionally kept.

* e2e: fix swctl admin review feedback (yaml.v2 key casing + missing swctl install)

- inspect cases: the CLI marshals typed structs through yaml.v2 (json tags
  ignored -> lowercased keys scopeid/entityid/mqeentity), which would not match
  the existing fixtures (scopeId/entityId/mqeEntity). Use '--display json | yq -P'
  so the json tags are honored and the fixtures stay unchanged.
- runtime-rule/cluster and ui-management/banyandb setups now install swctl: both
  cases newly depend on it (the flows/cases no longer use curl), but their setup
  only installed jq / yq, so a clean e2e shell would hit 'swctl: command not found'.
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.

3 participants