diff --git a/.github/workflows/skywalking.yaml b/.github/workflows/skywalking.yaml index e74faf1cd0..ca634c798d 100644 --- a/.github/workflows/skywalking.yaml +++ b/.github/workflows/skywalking.yaml @@ -41,7 +41,7 @@ jobs: with: submodules: true - name: Check license header - uses: apache/skywalking-eyes@775fe1ffda59b7e100aa144d0ef8d7beae17f97d + uses: apache/skywalking-eyes@5b7ee1731d036b5aac68f8bd3fc9e6f98ada082e code-style: if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule') @@ -78,7 +78,7 @@ jobs: go-version: "1.16" - name: Check Dependencies Licenses run: | - go install github.com/apache/skywalking-eyes/cmd/license-eye@775fe1ffda59b7e100aa144d0ef8d7beae17f97d + go install github.com/apache/skywalking-eyes/cmd/license-eye@5b7ee1731d036b5aac68f8bd3fc9e6f98ada082e license-eye dependency resolve --summary ./dist-material/release-docs/LICENSE.tpl || exit 1 if [ ! -z "$(git diff -U0 ./dist-material/release-docs/LICENSE)" ]; then echo "LICENSE file is not updated correctly" @@ -697,7 +697,7 @@ jobs: run: | echo "${{ matrix.test.env }}" >> $GITHUB_ENV - name: ${{ matrix.test.name }} - uses: apache/skywalking-infra-e2e@964ede199fe199e166920169dc5f8c9b214cfac5 + uses: apache/skywalking-infra-e2e@2b3aa53dbba73909730b211d5b8065abc74b56ad with: e2e-file: $GITHUB_WORKSPACE/${{ matrix.test.config }} - uses: actions/upload-artifact@v2 @@ -755,7 +755,7 @@ jobs: - name: Load docker images run: find docker-images -name "*.tar" -exec docker load -i {} \; - name: ${{ matrix.test.name }} - uses: apache/skywalking-infra-e2e@964ede199fe199e166920169dc5f8c9b214cfac5 + uses: apache/skywalking-infra-e2e@2b3aa53dbba73909730b211d5b8065abc74b56ad env: ISTIO_VERSION: ${{ matrix.versions.istio }} KUBERNETES_VERSION: ${{ matrix.versions.kubernetes }} @@ -800,7 +800,7 @@ jobs: shell: bash run: ./mvnw -B -q -f test/e2e-v2/java-test-service/pom.xml clean package - name: Java version ${{ matrix.java-version }} - uses: apache/skywalking-infra-e2e@964ede199fe199e166920169dc5f8c9b214cfac5 + uses: apache/skywalking-infra-e2e@2b3aa53dbba73909730b211d5b8065abc74b56ad env: SW_AGENT_JDK_VERSION: ${{ matrix.java-version }} with: diff --git a/docs/en/setup/backend/backend-k8s-monitoring.md b/docs/en/setup/backend/backend-k8s-monitoring.md index a75e289487..6bd53cd8e9 100644 --- a/docs/en/setup/backend/backend-k8s-monitoring.md +++ b/docs/en/setup/backend/backend-k8s-monitoring.md @@ -11,7 +11,7 @@ SkyWalking leverages K8s kube-state-metrics (KSM) and cAdvisor for collecting me 1. Setup [kube-state-metric](https://github.com/kubernetes/kube-state-metrics#kubernetes-deployment). 2. cAdvisor is integrated into `kubelet` by default. 3. Set up [OpenTelemetry Collector ](https://opentelemetry.io/docs/collector/getting-started/#kubernetes). For details on Prometheus Receiver in OpenTelemetry Collector for K8s, refer to [here](https://github.com/prometheus/prometheus/blob/main/documentation/examples/prometheus-kubernetes.yml). -For a quick start, we have provided a complete example of configuration and recommended version; you can refer to [showcase](https://github.com/apache/skywalking-showcase/tree/main/deploy/platform/kubernetes/feature-kubernetes-monitor). +For a quick start, we have provided a complete example of configuration and recommended version; you can refer to [showcase](https://github.com/apache/skywalking-showcase/tree/main/deploy/platform/kubernetes/templates/feature-kubernetes-monitor). 4. Config SkyWalking [OpenTelemetry receiver](opentelemetry-receiver.md). ## Kubernetes Cluster Monitoring diff --git a/docs/en/setup/backend/backend-telemetry.md b/docs/en/setup/backend/backend-telemetry.md index 6d2c3b82ea..a3d242091f 100644 --- a/docs/en/setup/backend/backend-telemetry.md +++ b/docs/en/setup/backend/backend-telemetry.md @@ -96,7 +96,7 @@ Set this up following these steps: regex: (.+) replacement: $$1 ``` -For the full example for OpenTelemetry Collector configuration and recommended version, you can refer to [showcase](https://github.com/apache/skywalking-showcase/tree/main/deploy/platform/kubernetes/feature-so11y). +For the full example for OpenTelemetry Collector configuration and recommended version, you can refer to [showcase](https://github.com/apache/skywalking-showcase/tree/main/deploy/platform/kubernetes/templates/feature-so11y). diff --git a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/common/TableHelper.java b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/common/TableHelper.java index 08f6160a16..1c56fe0674 100644 --- a/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/common/TableHelper.java +++ b/oap-server/server-storage-plugin/storage-jdbc-hikaricp-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/jdbc/common/TableHelper.java @@ -107,8 +107,21 @@ public class TableHelper { } public List getTablesForRead(String modelName, long timeBucketStart, long timeBucketEnd) { + final var model = TableMetaInfo.get(modelName); + final var rawTableName = getTableName(model); + + if (!model.isTimeSeries()) { + return Collections.singletonList(rawTableName); + } + + final var ttlTimeBucketRange = getTTLTimeBucketRange(model); + final var ttlTables = + LongStream.rangeClosed(ttlTimeBucketRange.lowerEndpoint(), ttlTimeBucketRange.upperEndpoint()) + .mapToObj(it -> getTable(rawTableName, it)) + .collect(toList()); return getTablesInTimeBucketRange(modelName, timeBucketStart, timeBucketEnd) .stream() + .filter(ttlTables::contains) .filter(table -> { try { return tableExistence.get(table); @@ -124,22 +137,19 @@ public class TableHelper { */ public List getTablesInTimeBucketRange(String modelName, long timeBucketStart, long timeBucketEnd) { final var model = TableMetaInfo.get(modelName); - final var tableName = getTableName(model); + final var rawTableName = getTableName(model); if (!model.isTimeSeries()) { - return Collections.singletonList(tableName); + return Collections.singletonList(rawTableName); } timeBucketStart = TimeBucket.getTimeBucket(TimeBucket.getTimestamp(timeBucketStart), DownSampling.Day); timeBucketEnd = TimeBucket.getTimeBucket(TimeBucket.getTimestamp(timeBucketEnd), DownSampling.Day); - final var ttlTimeBucketRange = getTTLTimeBucketRange(model); - return LongStream .rangeClosed(timeBucketStart, timeBucketEnd) .distinct() - .filter(ttlTimeBucketRange::contains) - .mapToObj(it -> tableName + "_" + it) + .mapToObj(timeBucket -> getTable(rawTableName, timeBucket)) .collect(toList()); }