HDFS-15483. Ordered snapshot deletion: Disallow rename between two snapshottable directories.

please check https://issues.apache.org/jira/browse/HDFS-15483

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 17s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
19m 14s
trunk passed

+1 :green_heart:
compile
1m 14s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m  7s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
checkstyle
0m 46s
trunk passed

+1 :green_heart:
mvnsite
1m 14s
trunk passed

+1 :green_heart:
shadedclient
16m  2s
branch has no errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 36s
hadoop-hdfs in trunk failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 47s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+0 :ok:
spotbugs
2m 57s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
2m 55s
trunk passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m  5s
the patch passed

+1 :green_heart:
compile
1m  8s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javac
1m  8s
the patch passed

+1 :green_heart:
compile
1m  1s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
javac
1m  1s
the patch passed

-0 :warning:
checkstyle
0m 41s
hadoop-hdfs-project/hadoop-hdfs: The patch generated 2 new + 25 unchanged - 0 fixed = 27 total (was 25)

+1 :green_heart:
mvnsite
1m  5s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
13m 37s
patch has no errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 31s
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 42s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

-1 :x:
findbugs
3m  2s
hadoop-hdfs-project/hadoop-hdfs generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0)

_ Other Tests _

-1 :x:
unit
95m 26s
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 43s
The patch does not generate ASF License warnings.

166m 14s

Reason
Tests

FindBugs
module:hadoop-hdfs-project/hadoop-hdfs

Dead store to dst in org.apache.hadoop.hdfs.server.namenode.FSDirSnapshotOp.checkUnderSameSnapshottableRoot(FSDirectory, INodesInPath, INodesInPath)  At FSDirSnapshotOp.java:org.apache.hadoop.hdfs.server.namenode.FSDirSnapshotOp.checkUnderSameSnapshottableRoot(FSDirectory, INodesInPath, INodesInPath)  At FSDirSnapshotOp.java:[line 357]

Dead store to src in org.apache.hadoop.hdfs.server.namenode.FSDirSnapshotOp.checkUnderSameSnapshottableRoot(FSDirectory, INodesInPath, INodesInPath)  At FSDirSnapshotOp.java:org.apache.hadoop.hdfs.server.namenode.FSDirSnapshotOp.checkUnderSameSnapshottableRoot(FSDirectory, INodesInPath, INodesInPath)  At FSDirSnapshotOp.java:[line 356]

Failed junit tests
hadoop.hdfs.server.namenode.TestNameNodeRetryCacheMetrics

hadoop.hdfs.server.balancer.TestBalancerRPCDelay

hadoop.fs.contract.hdfs.TestHDFSContractMultipartUploader

hadoop.tools.TestHdfsConfigFields

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 73f27ed726b0 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 60a254621a3

Default Java
Private Build-1.8.0_252-8u252-b09-1~18.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09

javadoc
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/branch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

checkstyle
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt

javadoc
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/patch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

findbugs
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/new-findbugs-hadoop-hdfs-project_hadoop-hdfs.html

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/testReport/

Max. process+thread count
5034 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/1/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 27s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
22m 12s
trunk passed

+1 :green_heart:
compile
1m 18s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m  8s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
checkstyle
0m 47s
trunk passed

+1 :green_heart:
mvnsite
1m 16s
trunk passed

+1 :green_heart:
shadedclient
17m 34s
branch has no errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 33s
hadoop-hdfs in trunk failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 41s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+0 :ok:
spotbugs
3m 16s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m 13s
trunk passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m 10s
the patch passed

+1 :green_heart:
compile
1m 12s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javac
1m 12s
the patch passed

+1 :green_heart:
compile
1m  3s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
javac
1m  3s
the patch passed

+1 :green_heart:
checkstyle
0m 42s
the patch passed

+1 :green_heart:
mvnsite
1m 10s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
15m 36s
patch has no errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 30s
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 39s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
findbugs
3m 10s
the patch passed

_ Other Tests _

-1 :x:
unit
117m 32s
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
1m 45s
The patch does not generate ASF License warnings.

195m 18s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.blockmanagement.TestBlockTokenWithDFSStriped

hadoop.hdfs.server.namenode.sps.TestStoragePolicySatisfierWithStripedFile

hadoop.hdfs.TestReadStripedFileWithDecodingDeletedData

hadoop.hdfs.TestDFSOutputStream

hadoop.tools.TestHdfsConfigFields

hadoop.hdfs.TestSafeMode

hadoop.hdfs.server.namenode.TestAddOverReplicatedStripedBlocks

hadoop.hdfs.server.namenode.TestNameNodeRespectsBindHostKeys

hadoop.hdfs.TestReconstructStripedFileWithRandomECPolicy

hadoop.hdfs.server.blockmanagement.TestUnderReplicatedBlocks

hadoop.hdfs.TestMaintenanceState

hadoop.hdfs.TestErasureCodingPolicies

hadoop.hdfs.server.namenode.ha.TestHAAppend

hadoop.fs.contract.hdfs.TestHDFSContractMultipartUploader

hadoop.hdfs.server.sps.TestExternalStoragePolicySatisfier

hadoop.hdfs.TestGetFileChecksum

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux e86c3674eb0d 4.15.0-101-generic #102-Ubuntu SMP Mon May 11 10:07:26 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 3eaf62726ff

Default Java
Private Build-1.8.0_252-8u252-b09-1~18.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09

javadoc
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/artifact/out/branch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

javadoc
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/artifact/out/patch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/testReport/

Max. process+thread count
3101 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-2172/2/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
28m 46s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
20m 12s
trunk passed

+1 :green_heart:
compile
1m 15s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m 14s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
checkstyle
0m 45s
trunk passed

+1 :green_heart:
mvnsite
1m 15s
trunk passed

+1 :green_heart:
shadedclient
16m  4s
branch has no errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 33s
hadoop-hdfs in trunk failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 44s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+0 :ok:
spotbugs
3m  8s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m  6s
trunk passed

_ Patch Compile Tests _

-1 :x:
mvninstall
0m 40s
hadoop-hdfs in the patch failed.

-1 :x:
compile
0m 42s
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

-1 :x:
javac
0m 42s
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

-1 :x:
compile
0m 41s
hadoop-hdfs in the patch failed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09.

-1 :x:
javac
0m 41s
hadoop-hdfs in the patch failed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09.

+1 :green_heart:
checkstyle
0m 46s
the patch passed

-1 :x:
mvnsite
0m 43s
hadoop-hdfs in the patch failed.

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

-1 :x:
shadedclient
4m 11s
patch has errors when building and testing our client artifacts.

-1 :x:
javadoc
0m 29s
hadoop-hdfs in the patch failed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.

+1 :green_heart:
javadoc
0m 39s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

-1 :x:
findbugs
0m 41s
hadoop-hdfs in the patch failed.

_ Other Tests _

-1 :x:
unit
0m 41s
hadoop-hdfs in the patch failed.

+1 :green_heart:
asflicense
0m 28s
The patch does not generate ASF License warnings.

86m 22s

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux cac2576e299d 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 05b3337a460

Default Java
Private Build-1.8.0_252-8u252-b09-1~18.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09

javadoc
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/branch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

mvninstall
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-mvninstall-hadoop-hdfs-project_hadoop-hdfs.txt

compile
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

javac
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

compile
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_252-8u252-b09-1~18.04-b09.txt

javac
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-compile-hadoop-hdfs-project_hadoop-hdfs-jdkPrivateBuild-1.8.0_252-8u252-b09-1~18.04-b09.txt

mvnsite
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-mvnsite-hadoop-hdfs-project_hadoop-hdfs.txt

javadoc
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-javadoc-hadoop-hdfs-project_hadoop-hdfs-jdkUbuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1.txt

findbugs
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-findbugs-hadoop-hdfs-project_hadoop-hdfs.txt

unit
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/testReport/

Max. process+thread count
414 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/3/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

the patch has to be updated  as the method isSnapshotDeletionOrdered() got removed

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  5s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
31m  3s
trunk passed

+1 :green_heart:
compile
1m 14s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m  7s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
checkstyle
0m 49s
trunk passed

+1 :green_heart:
mvnsite
1m 15s
trunk passed

+1 :green_heart:
shadedclient
17m 48s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 51s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 17s
trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+0 :ok:
spotbugs
3m 11s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m  9s
trunk passed

-0 :warning:
patch
3m 26s
Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m  8s
the patch passed

+1 :green_heart:
compile
1m 12s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javac
1m 12s
the patch passed

+1 :green_heart:
compile
1m 14s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
javac
1m 14s
the patch passed

+1 :green_heart:
checkstyle
0m 46s
the patch passed

+1 :green_heart:
mvnsite
1m 19s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
15m 19s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 47s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 17s
the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09

+1 :green_heart:
findbugs
3m 21s
the patch passed

_ Other Tests _

-1 :x:
unit
110m 24s
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 37s
The patch does not generate ASF License warnings.

198m 27s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.sps.TestExternalStoragePolicySatisfier

hadoop.hdfs.server.blockmanagement.TestBlockTokenWithDFSStriped

hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor

hadoop.fs.contract.hdfs.TestHDFSContractMultipartUploader

hadoop.hdfs.server.namenode.TestNameNodeRetryCacheMetrics

hadoop.hdfs.server.namenode.TestINodeFile

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/6/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux f5fed21c1b4c 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 11cec9ab940

Default Java
Private Build-1.8.0_252-8u252-b09-1~18.04-b09

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09

unit
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/6/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/6/testReport/

Max. process+thread count
3245 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/6/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.13.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 39s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
30m 45s
trunk passed

+1 :green_heart:
compile
1m 26s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m 13s
trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
checkstyle
0m 50s
trunk passed

+1 :green_heart:
mvnsite
1m 22s
trunk passed

+1 :green_heart:
shadedclient
17m  7s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 50s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 24s
trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+0 :ok:
spotbugs
3m  4s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m  1s
trunk passed

-0 :warning:
patch
3m 19s
Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m  9s
the patch passed

+1 :green_heart:
compile
1m 11s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javac
1m 11s
the patch passed

+1 :green_heart:
compile
1m  3s
the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
javac
1m  3s
the patch passed

+1 :green_heart:
checkstyle
0m 41s
the patch passed

+1 :green_heart:
mvnsite
1m 13s
the patch passed

-1 :x:
whitespace
0m  0s
The patch has 1 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply

+1 :green_heart:
shadedclient
14m 36s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 54s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 29s
the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
findbugs
4m 13s
the patch passed

_ Other Tests _

-1 :x:
unit
133m 35s
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 44s
The patch does not generate ASF License warnings.

221m 19s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.diskbalancer.command.TestDiskBalancerCommand

hadoop.hdfs.server.namenode.TestReconstructStripedBlocks

hadoop.hdfs.server.blockmanagement.TestBlockTokenWithDFSStriped

hadoop.hdfs.server.balancer.TestBalancerWithEncryptedTransfer

hadoop.hdfs.TestDFSStripedOutputStreamWithRandomECPolicy

hadoop.hdfs.server.datanode.TestBPOfferService

hadoop.hdfs.TestDecommissionWithStripedBackoffMonitor

hadoop.hdfs.web.TestWebHdfsWithMultipleNameNodes

hadoop.hdfs.TestReconstructStripedFile

hadoop.hdfs.TestReconstructStripedFileWithRandomECPolicy

hadoop.hdfs.TestErasureCodingExerciseAPIs

hadoop.hdfs.TestFileChecksum

hadoop.hdfs.server.namenode.TestHDFSConcat

hadoop.hdfs.TestErasureCodingPolicies

hadoop.hdfs.TestErasureCodingPoliciesWithRandomECPolicy

hadoop.hdfs.security.token.block.TestBlockToken

hadoop.hdfs.TestEncryptionZones

hadoop.hdfs.TestErasureCodingPolicyWithSnapshotWithRandomECPolicy

hadoop.hdfs.TestDFSStripedInputStream

hadoop.hdfs.server.balancer.TestBalancerRPCDelay

hadoop.hdfs.server.namenode.TestCheckpoint

hadoop.hdfs.TestReadStripedFileWithDecodingDeletedData

hadoop.hdfs.server.datanode.TestDirectoryScanner

hadoop.hdfs.server.namenode.TestFSEditLogLoader

hadoop.hdfs.TestDecommissionWithStriped

hadoop.hdfs.TestDFSStripedOutputStreamWithFailure

hadoop.hdfs.server.namenode.TestNameNodeRetryCacheMetrics

hadoop.fs.contract.hdfs.TestHDFSContractMultipartUploader

hadoop.hdfs.server.namenode.ha.TestHAAppend

hadoop.hdfs.TestErasureCodingPolicyWithSnapshot

hadoop.hdfs.server.balancer.TestBalancerWithMultipleNameNodes

hadoop.hdfs.server.namenode.TestAddStripedBlocks

hadoop.hdfs.server.balancer.TestBalancerWithNodeGroup

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/7/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 84a9f384f098 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 86bbd38c8dc

Default Java
Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

whitespace
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/7/artifact/out/whitespace-eol.txt

unit
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/7/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/7/testReport/

Max. process+thread count
4666 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/7/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.13.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 31s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 1 new or modified test files.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
31m 23s
trunk passed

+1 :green_heart:
compile
1m 29s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
compile
1m 17s
trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
checkstyle
0m 54s
trunk passed

+1 :green_heart:
mvnsite
1m 29s
trunk passed

+1 :green_heart:
shadedclient
19m 49s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 50s
trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 22s
trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+0 :ok:
spotbugs
3m  9s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m  7s
trunk passed

-0 :warning:
patch
3m 24s
Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m 10s
the patch passed

+1 :green_heart:
compile
1m 12s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javac
1m 12s
the patch passed

+1 :green_heart:
compile
1m  3s
the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
javac
1m  3s
the patch passed

+1 :green_heart:
checkstyle
0m 42s
the patch passed

+1 :green_heart:
mvnsite
1m  8s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
15m 35s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 50s
the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1

+1 :green_heart:
javadoc
1m 20s
the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

+1 :green_heart:
findbugs
3m 17s
the patch passed

_ Other Tests _

-1 :x:
unit
110m 40s
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 37s
The patch does not generate ASF License warnings.

202m 13s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.sps.TestExternalStoragePolicySatisfier

hadoop.fs.contract.hdfs.TestHDFSContractMultipartUploader

hadoop.hdfs.server.balancer.TestBalancerWithHANameNodes

hadoop.hdfs.server.datanode.TestBPOfferService

Subsystem
Report/Notes

Docker
ClientAPI=1.40 ServerAPI=1.40 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/8/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/2172

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 8649f4764f23 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 15a76e8d656

Default Java
Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01

unit
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/8/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/8/testReport/

Max. process+thread count
3187 (vs. ulimit of 5500)

modules
C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2172/8/console

versions
git=2.17.1 maven=3.6.0 findbugs=4.0.6

Powered by
Apache Yetus 0.13.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

+1

thanks @bshashikant for the contribution , thanks  @szetszwo  @mukul1987 for the reveiw


Smarter pipelines

As a:
developer
I want:
smarter pipelines that can identify when changes have been made to a service
So that:
we can have multiple pipelines triggering off of the same branch, that may build multiple services
Describe the solution you'd like:
we have 2 build pipelines for our monorepo that both run off any commits to the branch. Each pipeline detects changes in its respective service and only updates the HLD if there were changes to the service.
Acceptance Criteria:
Describe alternatives you've considered:
Additional context:
Not urgent
Does this require updates to documentation?:

@kjeffc can you expand on this?

we have 2 build pipelines for our monorepo that both run off any commits to the branch. Each pipeline detects changes in its respective service and only updates the HLD if there were changes to the service.

Currently the generated build pipelines should be limited to trigger only off the path of the service. So if code is changed in the directory for ServiceA, then only the build pipeline for ServiceA should be triggered. Are you seeing otherwise?

Since both services depend on each other, one of the asks was that each pipeline build both services.


Search Tools – Add right-padding, so text isn't hidden behind 'Clear' button

This is a bit too outdated. See this for the same thing with new code https://github.com/thoughtbot/refills/pull/315


WPML 'empties' get_widgets

Expected behavior
I had expected to see my sidebar after activating WPML.
Actual behavior
An empty string is returned.
What version of WordPress, PHP and Timber are you using?
all latest versions
How did you install Timber? (for example, from GitHub, Composer/Packagist, WP.org?)
Normally I use composer to install WordPress/Timber but I reverted back to a manual install of Timber to eliminate any issues.
My theme worked like a charm until 2 days ago when I purchased WPML. Since then my sidebar returns as empty.
I add my sidebar as I always do, as explained on https://timber.github.io/docs/guides/wp-integration/#widgets.
My widgets show in the widget admin area, no errors show up in php log but as soon as I activate WPML get_widgets returns empty.
I have also submitted a support ticket with WPML, but wanted to see if this is a know issue and if there's a workaround or so.

The issue has been solved. Explanation can be found in #1656.


Ideas for better twitter data

I've found that just getting individual tweets can lack context. I was thinking about making something that gets tweets in the following format:
TWEET: do you like coffee?
USERNAME REPLY: yes
###

Where USERNAME is the twitter user data has been scraped on.
This breaks down a little for longer reply chains:
TWEET: do you like coffee?
USERNAME REPLY: yes
REPLY: why?
USERNAME REPLY: good drink
USERNAME REPLY: and doubles as a weapon when hot
###

and very long threads:
USERNAME: a thread on how many tweets to include in a thread 1/1000

Threads don't need to have this sort of context (which can be very long) so they can still be individual documents but replies do.
Simple solution:
For any given tweet, check if there's a reply and if yes write to a .txt in the first format shown.
Problems:

can only get one reply
can't differentiate from a thread

Any ideas?

Definitely agree this would be a nice addition to the Twitter loader. Maybe like a include_context mode or something.
As far as what to include in a document, I think it's reasonable to include the entire thread in a Document. Conceptually, each document should contain all the tokens that are needed to provide context, etc. Since each tweet is just 288 characters, jamming in a long thread shouldn't be worse than making a document out of a long paper.
The text splitters will take care of chunking up the documents.

include_context mode sounds good. Might be useful for other loaders too.

I think it's reasonable to include the entire thread in a Document.
The text splitters will take care of chunking up the documents.

Good points! What about the format for separating items? My initial thoughts were to use ### so they can be used as examples too, setting the text splitter to separate at ###. In a long thread that's broken up, this probably won't work. What are your thoughts on that?

Hm interesting. I've heard that using ### to separate things is generally effective.
In that case, you wouldn't want to text-split by ### because you want many tweets per node right? (to preserve the context). After you generate the document it's probably fine to just create an index out of it like normal.


Calling getPermissionValue for a user returning wrong results

Using PEX build 131 for 1.8.9
    public static Tristate getUserPermission(User user, Claim claim, String permission, Context sourceContext) {
        Set<Context> contexts = new HashSet<>();
        if (claim.parent != null) {
            contexts.add(claim.parent.getContext());
        } else {
            contexts.add(claim.getContext());
        }

        if (sourceContext != null) {
            contexts.add(sourceContext);
        }

        // This is required since permissions will check each context separately
        if (!user.getSubjectData().getPermissions(contexts).isEmpty() || !user.getSubjectData().getParents(contexts).isEmpty() ) {
            // This is always returning true
            Tristate value = user.getPermissionValue(contexts, permission);
            if (value != Tristate.UNDEFINED) {
                return value;
            }
        }
        return Tristate.UNDEFINED;
    }

Using the following context against user with UUID  "bc1b308c-166f-3e68-8227-125e03c80d18"
"gp_claim": "92d8a0fb-6890-481c-b615-633b2efdb62f"

The first permission that I check for is "griefprevention.claim.flag.interact-block-secondary.minecraft.ender_chest" which returns TRUE and is correct.
The second permission that is checked is "griefprevention.claim.flag.interact-block-secondary" and this seems to return TRUE as well which is wrong. I even set all occurences of "griefprevention.claim.flag.interact-block-secondary" to -1 and reloaded PEX with the issue still happening.
I even tried the following method which also returned TRUE when it clearly should be UNDEFINED
user.hasPermission(contexts, "griefprevention.claim.flag.interact-block-secondary");

Entire permission file can be found here
http://pastebin.com/E6MS8EyW

nevermind, the user had
"griefprevention.claim": 1,
derp...


fix(header-cell): changed sorting arrow direction in header cell

Describe pull-request
Current direction of sorting arrow does not align with standard direction found in common  web design libraries. Changed direction of arrow to align with standard sorting conventions. Arrow up is used for ascending order and arrow down is used for descending order. Also replaced hover icon when switching sorting key with arrow up to make it clear what direction the table will sort in on first click.
How to test

Go to sorting section of table component in storybook
Click on header cell and see direction of arrow on ascending and descending sorting events.

Screenshots
Old sorting:

New sorting:

Material design documentation about sorting in tables:

Additional context
Material design table documentation

@Wadzabi  - Thanks a lot buddy for this great idea and work. I will share this with our designers and we will come back to you ;)

Couple of cents from my side:

Fix for selection on first column and making it "asc" is a good one, I think it makes sense to have it like that as all other columns start with asc.
Removal of hover icon which indicates sorting and replacing it with just "one way" icon has to be checked and accepted by designers. We can not move forward without designer input. It will also require a change in Figma.
Once we have designer input we can proceed further if/when/how to release it.
The issue with linter that always changes asc/desc in the readme file is something to look into in a separate ticket.

Hi tegel team, any updates on when this will be reviewed by a designer?

Hello Martin!
Thank you for your work and the contribution! :) We had a look at the whole flow and were thinking of making some additional changes as well. We though that from the suggested new behavior and the old one, there are a few things we could consider changing as well:

Keeping/adding a neutral state. Currently you cannot “get out” of the sorting mode. Introducing a 3rd state/click, that would lead you back to sorting arrows that appear on hover, could solve this. This would suggest that we keep the sorting icons and therefore:

Instead of having the Arrow icon visible on hover we could have the Sorting icon appear on hover (also from the very first time you hover, we don't currently have this). Link to behavior example: https://carbondesignsystem.com/components/data-table/usage/

Looking into changing so that we do not directly enter the “Hover on selected” state after pressing but rather just selected and then introducing hover on selected the second time you hover.

We are still in planning but we will try and have a look when we can pick this up. It probably won't be anytime soon unfortunately so, if you have the time and resources, feel free to take a stab at it :)

Closing it due to inactivity.


DPP for DGP

This change defines and implements DPP for DGP. It also adds differentiation for DGP problems.
The DPP ruleset for DGP is the log-log analogue of the ruleset for DCP. Whereas multiplication was special cased in DCP, powers are special-cased in DGP. The expression x**a is allowed so long as both x and a are not parametrized. If a is parameterized, it must be a Parameter, not a compound expression containing parameters. The sign of an exponent can be real, but the sign of all other Parameters must be positive.
This change adds keyword arguments dpp=True/False to is_dcp and is_dgp. When True, these methods apply the DPP ruleset. This change also adds a keyword argument enforce_dgp=True/False to problem.solve: when True, a DPPError is raised on DPP violations, instead of a warning.
This change also includes critical bug fixes and performance improvements for DPP-DCP and ASA form.
For DCP, this change fixes a bug in which DPP wasn't applied correctly to constraints; on master, it's possible to write non-DPP constraints like x == log(param), which leads to canonicalization errors and incorrect results. This change fixes that.
For ASA form, this change pre-computes and caches a reduced representation of the "problem data tensor," by eliminating  rows that are identically zero to produce a reduced tensor; additionally, the indptr and indices for the solver's CSC data matrix are pre-computed. As a result, the multiplication of the (reduced) problem data tensor and the parameter vector (which now emits a dense data vector for the CSC matrix), and the subsequent construction of the solver's problem data matrix, is often orders of magnitude faster. The problem data tensor is reduced by identifying the nonzero rows, and then (carefully) building a CSR matrix that represents the reduced tensor. (Naively converting to a CSR matrix is extremely inefficient, and often leads to OOM errors.)
Additionally, a fast path for apply_param_jac is added, for small problems.
Finally, this change also includes web documentation, to describe the new features.

Thanks for the quick replies! LGTM.


7.2: please do not use hardcoded yacc

https://github.com/openiked/openiked-portable/blob/81092ec416e0eeb27569b368e8e0d3d5e26c3b05/iked/CMakeLists.txt#L142-L146
This should be implemented using https://cmake.org/cmake/help/latest/module/FindFLEX.html

Thanks, I wasn't aware of that cmake feature! This looks a lot better than the current hack.

One problem I am running into is that this cmake module doesn't find the yacc versions shipped in base by most BSD systems.

What about bison? 🤔

bison would require installing an external package which I find unfortunate because iked builds fine with what is available in the base installation. Maybe we need a FindYACC and fallback to bison if that isn't there.

Currently most of the bison generated parses do not need flex static library on linking.
I'm not sure how it is with yacc on *BSD but generally speaking yacc on Linux is way behind GNU bison and everything what theoretically needs yacc always is possible to build bison.


Enable ADC Support in stm32l496g_disco

This commit enables ADC support for the stm32l496g_disco platform. This commit has been tested in stm32l496g_disco platform with samples/drivers/adc and tests/drivers/adc/adc_api.
closes: zephyrproject-rtos/zephyr#35835
Signed-off-by: Affrin Pinhero<EMAIL_ADDRESS>

agree with @MaureenHelm , if we need logging enabled, this should be done in the main config and not be board specific.

https://github.com/zephyrproject-rtos/zephyr/pull/36643#discussion_r665069154


Consult usage viatable sorting method

Hello everyone, my English is not good, but in order to follow more people can understand the content, so i used Google translation, please forgive me.
public function getItems()
{
    return $this->hasMany(Item::className(), ['id' => 'item_id'])
                ->viaTable('order_item', ['order_id' => 'id']);
}

My question is, If I want to return  results by order_item.id DESC , how should write this relationship?
i test this code
public function getItems()
{
    return $this->hasMany(Item::className(), ['id' => 'item_id'])
                ->viaTable('order_item', ['order_id' => 'id'], function ($query) {
            $query->orderBy(['order_item.id' => SORT_DESC]);
        });
}

According debug bar view my test results, check out the order_item found as I really want to sort of form, but in the end the query associated data in, yii generated id in ('3', '2', '1 ') conditions.
But this way the query results returned and did not last as I want to sort. I do not know how to solve.
query sql is
 1. SELECT * FROM `order` WHERE `id`='1'
 2. SELECT * FROM `order_item` WHERE `order.id`='1' ORDER BY `order_item`.`id` DESC
 3. SELECT * FROM `item` WHERE `order_item.id` IN ('101', '102', '103')

I use findbysql() or querybuilder, I can return the required dataset, and sort of hope, but I might have  obsessive-compulsive disorder, so I hope use viatable can achieve the goal I want to achieve. Thank you.

Try the following:
public function getItems()
{
    return $this->hasMany(Item::className(), ['id' => 'item_id'])
                ->viaTable('order_item', ['order_id' => 'id'])
                ->orderBy(['order_item.id' => SORT_DESC]);
}

Note that GitHub is for bug reports and feature requests. Forums should be preferred for questions.

thanks  next time i use forums .
but  is not work
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'order_item.id' in 'order clause'
The SQL being executed was: SELECT * FROM `order` WHERE `id` IN ('101', '102', '103') ORDER BY `order_item`.`id` DESC

Ah, you need it to be ordered by middle table id, not primary table id. In that case you need JOIN i.e. using joinWith.

thank again.
i using joinWith
have a good day.


Relax bounds on leptos_axum::LeptosRoutes

Is your feature request related to a problem? Please describe.
https://github.com/leptos-rs/leptos/blob/afa67726c1f153c29e6e180098e7b5518e108a24/integrations/axum/src/lib.rs#L1289
leptos_axum::LeptosRoutes is bounded by LeptosOptions: FronRef<S>. I think that bound should only exist on the implementation and not the trait definition. If someone wants to use the integration they must supply LeptosOptions within the router
Describe the solution you'd like
I deleted that line on my local repo and CI is cooking without issues (so far). Bounds should try to only exist where absolutely needed. Everyone will likely use the default impl for Router<S> which is already bounded by LeptosOptions
Describe alternatives you've considered
Writing the integration for Routes without using that trait, it would just be very convenient to remove
a few instances of LeptosOptions from signatures if possible. I could also just use LeptosOptions, but I do not think I benefit if I just want to do full SSR (I could be wrong though).
Would be interested to understand why / if that bound is actually needed for some edge case. Otherwise, I can submit a PR?

Sure, PR welcome if removing it works fine.


Do Mrknow

Witam na twitter I Facebook jest duzo gadania o clonie genesis ,Lambda prosi zebys zmienil nazwe
Genesis development has stopped by me and it's opensource...
I think he changed the author name, this is good.
I want nothing to do with Genesis.
I hope he will also remove Genesis from the name.
I don't want his users asking for help to me.
I don't have the time of it, I am very busy.
You shouldn't ask here or me about it.
If you have any question you should go and ask that guy.
I won't check the code of every genesis fork that is released or will be released.
I don't care about Genesis anymore.
If you trust this guy install it.
If you don't trust him, don't install it.
It's that simple.

https://forums.tvaddons.ag/lambda-s-xbmc-addons/40524-specto-fork-genesis-3.html


Fixed NPE error when searching using period granularity

Description
Fixed that NPE error occurred when there were two or more aggregation fields in the query when searching using period granularity.
Related Issue : N/A

How Has This Been Tested?
In the current timestamp type of column specification, the period type of granularity property is not supported by the UI, so you need to check the result through the Search API.
As shown below, it can be confirmed that no error occurs when calling with the request body content.
Ref. 1 : https://github.com/metatron-app/metatron-discovery/blob/master/.github/USE_REST_API.md
Ref. 2 : https://discovery.metatron.app/docs/api-guide.html#resources-datasource-query
(POST) /api/datasources/query/search
[Request Body]
{
    "dataSource": {
        "type": "default",
        "name": "sales_geo"
    },
    "filters": [

    ],
    "pivot": {
        "columns": [
            {
                "type": "timestamp",
                "name": "OrderDate",
                "alias": "P6M(OrderDate)",
                "ref": null,
                "granularity": {
                    "type": "period",
                    "period": "P6M",
                    "timeZone": "UTC",
                    "origin": "2000-01-01T00:00:00.000Z"
                },
                "format": {
                    "type": "time_continuous",
                    "discontinuous": false,
                    "unit": "MONTH",
                    "timeZone": "UTC",
                    "locale": "en"
                }
            }
        ],
        "rows": null,
        "aggregations": [
            {
                "type": "dimension",
                "name": "Category",
                "alias": "Category"
            },
            {
                "type": "measure",
                "name": "Discount",
                "alias": "SUM(Discount)",
                "aggregationType": "SUM"
            },
            {
                "type": "measure",
                "name": "Sales",
                "alias": "SUM(Sales)",
                "aggregationType": "SUM"
            }
        ]
    },
    "userFields": [

    ],
    "limits": {
        "limit": 1000000,
        "sort": [

        ]
    },
    "resultFormat": {
        "type": "chart",
        "mode": "line",
        "options": null,
        "columnDelimeter": "―"
    }
}

[Response Body]
{
    "rows": [
        "Jan 2011",
        "Jul 2011",
        "Jan 2012",
        "Jul 2012",
        "Jan 2013",
        "Jul 2013",
        "Jan 2014",
        "Jul 2014"
    ],
    "categories": [],
    "columns": [
        {
            "name": "Furniture―SUM(Discount)",
            "value": [
                25.42,
                51.23999999999999,
                24.26,
                52.029999999999994,
                36.220000000000006,
                63.199999999999996,
                40.34,
                76.17999999999998
            ],
            "percentage": []
        },
        {
            "name": "Furniture―SUM(Sales)",
            "value": [
                50719.0,
                106469.0,
                54940.0,
                115578.0,
                64493.0,
                134417.0,
                66650.0,
                148740.0
            ],
            "percentage": []
        },
        {
            "name": "Office Supplies―SUM(Discount)",
            "value": [
                62.19999999999999,
<PHONE_NUMBER>999999,
                68.99999999999997,
<PHONE_NUMBER>999999,
                85.79999999999994,
<PHONE_NUMBER>9999986,
<PHONE_NUMBER>999999,
<PHONE_NUMBER>0000002
            ],
            "percentage": []
        },
        {
            "name": "Office Supplies―SUM(Sales)",
            "value": [
                45771.0,
                106011.0,
                55388.0,
                81860.0,
                64002.0,
                119529.0,
                87780.0,
                158786.0
            ],
            "percentage": []
        },
        {
            "name": "Technology―SUM(Discount)",
            "value": [
                13.800000000000002,
                34.7,
                20.900000000000006,
                31.0,
                24.300000000000008,
                38.20000000000002,
                28.70000000000001,
                52.8
            ],
            "percentage": []
        },
        {
            "name": "Technology―SUM(Sales)",
            "value": [
                64495.0,
                110790.0,
                47665.0,
                115129.0,
                99497.0,
                126585.0,
                98507.0,
                173553.0
            ],
            "percentage": []
        }
    ],
    "info": {
        "totalCategory": 8
    }
}

Need additional checks?
Since the part of the process of changing the query result to chart data has been modified, after creating the dashboard, we need to create various charts and check the impact of the query.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have read the CONTRIBUTING document.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[x] I have added tests to cover my changes.

Additional Context

deploy to 3

deploy to 3

deploy to 1

deploy to 1


Indicator Disaggregation Report: Can't view as a Low/Medium access user

Issue
As someone with Low or Medium access to a program, I should be able to see the Indicator disaggregation report. Right now, I see it in the menu:

But when I click it, I get this page:

Acceptance criteria

[ ] 1. If I have Low or Medium access to a program, I can access the Indicator disaggregation report.

Housekeeping

[ ]  Unit test/s written wherever applicable
[ ]  i18n tags included wherever applicable
[ ]  Functionality is accessible to people using screen readers

QA PASSED:

As low user, I was able to view indicator dis aggregation report for programs in the country I had access to (Afghanistan -<EMAIL_ADDRESS>&<EMAIL_ADDRESS>


Support ch/rem font relative units

As per https://www.w3.org/TR/css3-values/#font-relative-lengths
I was trying to parse/minify some CSS that did this:
h1 { font-size: 2.00rem }
h2 { font-size: 1.50rem }
h3 { font-size: 1.25rem }

Not sure if I edited the test JSON correctly but the change appears to work for me.

Thanks


Add delete scheduled jobs by name and args

Adding capability on work client to delete scheduled jobs with specified job-name and job-args.

Closing PR as this would not be applicable for use cases generally.


Out of Sync Explorer Tables + Crashes

While managing the DEA ODC Databases, we've had to do some manual deletions and updates to the agdc database tables, and I suspect this has made Explorer unhappy.
We've used a 'QA' SQL query in the past, which compares the number of datasets explorer knows about vs the number of datasets ODC knows about.
SELECT *, (OUTPUT_QUERY.agdc_ds_count - OUTPUT_QUERY.explorer_ds_count) as diff
FROM (
        select count(ds.id) as agdc_ds_count, p.dataset_count as explorer_ds_count, dt.id, p.name
        from cubedash.product p, agdc.dataset_type dt, agdc.dataset ds
        where
            dt.name = p.name
        and dt.id = ds.dataset_type_ref
        and ds.archived is NULL
        GROUP BY p.name, dt.id, p.dataset_count) AS OUTPUT_QUERY
WHERE NOT OUTPUT_QUERY.agdc_ds_count = OUTPUT_QUERY.explorer_ds_count;

Which shows a bunch of mismatched Products:
 agdc_ds_count | explorer_ds_count |  id  |            name            |  diff
---------------+-------------------+------+----------------------------+---------
        419777 |            514922 |  479 | ga_ls_fc_3                 |  -95145
        415373 |            417815 |  478 | ga_ls_wo_3                 |   -2442
         39227 |             88696 | 1271 | ga_ls_wo_fq_cyear_3        |  -49469
        503454 |            503453 | 1798 | ga_s2am_ard_3              |       1
         65063 |            184167 | 1006 | ga_s2_ba_provisional_3     | -119104
          8639 |             10050 | 2953 | ga_s2ls_intertidal_cyear_3 |   -1411
         51381 |            204223 | 1600 | ga_s2_wo_provisional_3     | -152842

In an attempt to update this, I thought i could run cubedash-gen --force-refresh on each of the out of sync products, however when I try this, i get a crash:
cubedash-gen --force-refresh ga_s2ls_intertidal_cyear_3
Updating 1 products for LocalConfig<loaded_from=defaults, environment='default', config={'db_hostname': 'dea-dev-db', 'db_database': 'odc', 'db_username': 'explorer_writer', 'db_password': '***', 'index_driver': 'default', 'db_connection_timeout': '60'}>
Generating product summaries...
ga_s2ls_intertidal_cyear_3 refresh
2024-04-05T04:27:02.288888Z [warning  ] spatial_deletion_full_scan     after_date=None product_name=ga_s2ls_intertidal_cyear_3
2024-04-05T04:27:02.326885Z [warning  ] spatial_update.recreating_everything after_date=None product_name=ga_s2ls_intertidal_cyear_3
2024-04-05T04:33:35.828477Z [warning  ] forcing_refresh                product_name=ga_s2ls_intertidal_cyear_3
	 ga_s2ls_intertidal_cyear_3 1900
2024-04-05T04:33:35.996976Z [error    ] product.error                  product=ga_s2ls_intertidal_cyear_3
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/cubedash/generate.py", line 127, in generate_report
    result, updated_summary = store.refresh(
  File "/usr/local/lib/python3.10/dist-packages/cubedash/summary/_stores.py", line 1528, in refresh
    self._recalculate_period(
  File "/usr/local/lib/python3.10/dist-packages/cubedash/summary/_stores.py", line 1374, in _recalculate_period
    summary = self._summariser.calculate_summary(
  File "/usr/local/lib/python3.10/dist-packages/cubedash/summary/_summarise.py", line 170, in calculate_summary
    dict(
TypeError: 'LegacyCursorResult' object is not subscriptable
ga_s2ls_intertidal_cyear_3 error
finished. 1 error

This did seem to succeed in getting the dataset counts in sync, but I'm not sure what state it has left the database in.
Questions

Is this crash happening after the Product is entirely updated, or is it only partially done?
Does this SQL query make any sense?
Should a 'QA' feature like this be included in Explorer?
What can we do to make Explorer resilient to Database modifications? Ideally we need to fix ODC to support mutating the database, but there's going to be a few assumptions about datasets not being allowed to be deleted that will have flow on impacts.

Versions
Docker Image: docker.io/opendatacube/explorer@sha256:026ac9f06ad41abdf62dd5c8dc3206f6595bc25564f029bbcec574e64806d317
Explorer version: 2.10.2.dev20+ge0aa69f3
Core version: 1.8.17
Python: 3.10.12
SQLAlchemy Version: 1.4.52

Interesting that the error is coming from a "LegacyCursorResult" object, I wonder if sqlalchemy has changed

That's what it sounds like to me. Or ODC has changed...
@Ariana-B or @SpacemanPaul: I know that there's been work on updating to SQLAlchemy 2 in ODC, Is that only in ODC 1.9+ or was it in 1.8 as well?

Is it possible this isn't even a SQLAlchemy 2 thing but a 1.4 thing? https://stackoverflow.com/a/58660606

I agree that force-refresh is the correct move here — it should replace everything Explorer knows about the product. Will look into the crash, but to answer the other Qs:

What can we do to make Explorer resilient to Database modifications? Ideally we need to fix ODC to support mutating the database, but there's going to be a few assumptions about datasets not being allowed to be deleted that will have flow on impacts.

The issue is that ODC's tables let us efficiently see recently added/updated/archived rows in the ODC schema, but not deleted rows (as they disappear completely).
To handle deletions efficiently (ie, incrementally, without scanning the whole table) I believe we'd need extend ODC's tables slightly to add a "deleted row log" table that's populated via a trigger. Explorer could do that if we really want it.
The "ideal" way to do it at the moment without code changes is to archive the datasets first, run cubedash-gen so it will see that those datasets as recently archived, and then we're free to delete them from ODC.

Does this SQL query make any sense?
Should a 'QA' feature like this be included in Explorer?

It does, though it's a broad brush to measure. The raw product count is one part of ~three. A more thorough query could be put on the audit pages of Explorer. Checking for instance the spatial table counts, and how recent the summary is compared to most-recently-added datasets in underlying ODC.

SQLAlchemy 2 is only in datacube-1.9.
1.8 should still be on 1.4.  But the later versions 1.4.x versions have a lot of changes to help users prepare for the migration to 2.0 - might be one of those.

I don't know if it is related to this, but after fixing the missing lxml_html_clean dependency (#584), many tests on current HEAD of the develop branch also crash with a TypeError on LegacyCursorResult:
...
            region_counts = Counter(
>               dict(
                    self._engine.execute(
                        select(
                            [
                                DATASET_SPATIAL.c.region_code.label("region_code"),
                                func.count(),
                            ]
                        )
                        .where(where_clause)
                        .group_by("region_code")
                    )
                )
            )
E           TypeError: 'LegacyCursorResult' object is not subscriptable
cubedash/summary/_summarise.py:170: TypeError

The LegacyCursorResult type errors were first seen on develop after @omad merged #580 on 18 March, and it looks like commit e0aa69f3d34903d7feb722a4e209525e5f975cad introduced the error (commit a6c10790966fe1271424124885a6aa6364c1384d just before was also red, but the integration tests passed for that).

Had a second look, https://github.com/opendatacube/datacube-explorer/pull/580#discussion_r1554719430 isn't obvious to me.

The LegacyCursorResult type errors were first seen on develop after @omad merged #580 on 18 March, and it looks like commit e0aa69f introduced the error (commit a6c1079 just before was also red, but the integration tests passed for that).

Good catch Peter!
That auto-modernise does break it. Here's a simple reproduction of the same thing:
    engine = create_engine('sqlite:///:memory:')
    result2 = Counter(
        dict(
            engine.execute(
                select(
                    [
                        select(1).label("item"),
                        select(2).label("count")
                    ]
                )
            )
        )
    )

That's not the only bad part of the reformat — it's also changing the == None lines in sqlalchemy queries to is None.

This might be a good reason to move from shed over to ruff, as we have with other repositories. Formatting is fine and we don't need the "modernisation" aspects.

Reverting those changes in #587

I also just switched to Ruff from black/isort/flake8 and have good experiences so far.
I don't know anything about shed, but I know Ruff lint has a modernisation category that can upgrade various things because it was eager to switch from Optional[t] to t | None on Python 3.10.


Display of close contacts should have a visual indicator

We'll be displaying contact cards when we show close contacts to some person A. However, the current implementation will simply display the cards in the person view. Thus, there should be an indicator to visualize the fact that the GUI is displaying "close contacts".

This is not that important.


Payment Wizard Fieldset

Critical Changes
Changes

Thank you to Thomas Taylor for adding the option to use a field set on the "Payment Wizard" page, now you can customize the fields displayed when generating payments.

Issues Closed
Fixes #1967
Fixes #2588
Fixes #2620
New Metadata
Deleted Metadata

@smarovich - This PR will be for the next release, can you please review the Changes section when you have a chance.
@force2b can you pair up with @joy-sfdo on this review? Joy is QE but wanted to also get your eyes on it with all of the work you had recently done on this page. This would be for the next release.

@jjbennett Should this PR list the 3 issues that Tommy lists as fixed? https://github.com/SalesforceFoundation/Cumulus/pull/2692

@force2b yes! updated the PR, thank you!

@jjbennett Can you confirm the name of the field set? Is it Payment_WizardFS?  I was going to mention it in the release notes.

@smarovich yes, Payment_WizardFS is correct, thanks!

Great. Thanks for confirming! I updated the release notes.

@joy-sfdo nice catch, fixed!

@jjbennett -- Excellent! Thanks!


Why PointMLP not considered as GCN?

Hello, thank you for your detailed and inspiring work. After understanding the paper and reviewing the code I'm still not clear why PointMLP is classified as MLP. To the best of my understanding, it can be defined with the message-passing paradigm. Referring to the definition provided by the Pytorch Geometric  can define A and Φpre in Eq. (4). Then there are Φpos operations. Again, my understanding is there is graph convolution (or message-passing) with a k-nearest neighbors graph. So, the complexity scales with N*K (N: number of points, K: kNN size), which is very similar to GNN - GCNs.
Similarly, PointNet is defined as MLP in the paper. However, the points above are similar here. Here is the PyG implementation of PointNet convolution. Which is composed of local and global level neural networks.
Based on the DGCNN definition as GCN, it is classified as GCN because it does edge-level operations rather than node level?
Again, thank you so much for your contribution.
Best,

Thanks for your insightful thoughts, i'm not an expert on GNNs. According to my limited understanding on GNNs, if we generalize all paradigms to a high-level concepts, they are almost the same, including gnn, attention, etc. Please correct me if i'm wrong.

Thanks for  pointing out this.
Precisely, it should be DGCNN and cannot be simply classified as GCN. We will update it.
Thanks for your comments.

Closed. Feel free to reopen it if you have any further questions or concerns.


Moving the logger package to dapr/kit

Description

Removed dependency on dapr/dapr in favor of dapr/kit
Setting logger.DaprVersion in each program because previously logger package depended on dapr/dapr
Auto-grouping of package imports by standard library, 3rd party, 1st party

Issue reference
Resolves #2820
Checklist
Please make sure you've  completed the relevant tasks for this PR, out of the following list:

[x] Code compiles correctly
[ ] Created/updated tests
[x] Unit tests passing
[ ] End-to-end tests passing
[ ] Extended the documentation / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Specification has been updated / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]
[ ] Provided sample for the feature / Created issue in the https://github.com/dapr/docs/ repo: dapr/docs#[issue number]

cc: @artursouza @mukundansundar


App: component wheel

In designing pets we realized we will need more than just one component for a pet:

follow
mount
give item (https://github.com/webaverse/app/issues/1533)
pet the pet

We are trying to keep a simple interface, but probably just the E key is not enough to intelligently select these cases. We might need an action wheel rendered when you hold E, so that we can select the action we wanted.
This can be done in the 2D DOM for now; we can port to 3D as needed.
The UI should be consistent, and we should keep it to one word per component that can be activated.

Given how old this issue is, it is out of touch with the mob system and the AI actions.
The way to do this going forward might just piggy back off of the AI responses/dialogs.


Store Archetypes in HashSet instead of HashMap

Currently Archetypes are stored in a HashMap keyed by an Identifier, where the Archetype itself owns the IdentifierBuffer. This works fine, except for the danger involved with the Identifier needing to outlive its IdentifierBuffer. Right now everything is sound, but it would be easy to lose the soundness accidentally.
This stackoverflow answer suggests using a HashSet instead, and defining the Hash and Eq traits to be based on the IdentifierBuffer stored directly in the Archetype. It would make accessing the Archetype a bit easier, since Borrow could also be implemented to allow using an Identifier on lookup still. This way, Identifiers used elsewhere could be associated with their appropriate lifetime, since the issue with the key-value relationship is no longer a problem.

It seems that the only two places archetype Identifiers are used are in the archetype table itself and in the EntityAllocator Location structs. With that in mind, a plan for improving the safety of these identifiers could be as follows:

[ ] Create a wrapper for an Archetype that implements Hash, PartialEq, and Eq. Perhaps also have it implement Borrow<Identifier>.
[ ] Instead of storing the Archetype within a HashMap keyed by an Identifier, store a HashSet with the wrapper created above. The same entry API can be emulated using get_or_insert_with on the HashSet (while it's unstable in std, it is stable in hashbrown).
[ ] Now that Identifiers are no longer being used as a key, we can associate a lifetime 'a with them. This lifetime indicates that the Identifier does not live longer than its IdentifierBuffer, which should hopefully prevent unsound usage.
[ ] Additionally, IdentifierIter can have an associated lifetime 'a, to ensure the same. We don't want the iterator to live longer than the values it iterates over.

We could also remove the reference-buffer association altogether, replacing it with Identifier and &'a Identifier, but this adds another layer of reference. It's probably fine, but it's not too big of an issue to keep two separate structs that just store the pointer directly, if it's just as safe.

Turns out, HashSet is not made for mutable access to inserted elements. This is understandable, since you don't want the hash or equivalence of your values to change while they are stored. However, in the case of Archetypes, the IdentifierBuffer will never change, meaning the hash and equivalence based on those values will also never change.
After a lot of research, I was able to figure out how to make my own custom container built on hashbrown's RawTable. This allows storage of an Archetype, while also accessing it mutably based on an Identifier. This new table, called Archetypes, actually makes things a lot easier in terms of Serialize and Deserialize trait implementations, and replaces the previous HashMap<Identifier<R>, Archetype<R>> field that existed in World<R>. This is the ideal solution as far as I can tell, as it doesn't require any newtype wrappers. As it turns out, RawTable is actually extremely flexible and easy to work with.
That takes care of the first two boxes on the checklist in the above comment. Now to work on associating lifetimes with the Identifier structs.
As a side note, I am considering renaming Identifier and friends as follows: IdentifierBuffer -> Identifier and Identifier -> IdentifierRef. I think this makes it just a bit clearer what is what, as there is nothing about the name Identifeir that denotes the value is borrowed.

The third check box, associating lifetimes with Identifiers, may still not be possible, due to Identifiers being stored within the EntityAllocator. That causes the World to borrow itself, which means it can no longer be moved at all. This also makes deserialization run into some serious issues. Unless there is some way to associate the value with the lifetime of an IdentifierBuffer without borrowing the buffer, there is no way to associate the lifetime.
However, the Archetypes table is a good change that I intend to keep. It actually saves space, as the identifier pointer doesn't have to be stored twice for each Archetype.
Furthermore, I think I can still associate the lifetime with the IdentifierIter, since it is only used intermediately, and never stored within the container.

After looking at it again with new eyes, I think it best to leave off the lifetime annotation on IdentifierIter as well. This is because it can be created from an Identifier, which does not have any lifetime information, and that could cause confusion because the lifetime would be tied to the Identifier which is not necessarily tied to its IdentifierBuffer. Instead, the creation of these types is still classified as unsafe, with the caller having to guarantee the lifetimes of the derivative types will not outlive the lifetimes of their sources.
I feel good about this. It matches what is done in hashbrown::raw, with both Bucket and RawIter not carrying any lifetime information, putting the burden on the caller to make sure the lifetime is correct. Given that hashbrown::raw is a public API, and the types dealt with here are internal-only, I think this is fine as long as the documentation reflects it (which it will, whenever I get time to write the documentation lol).


Dynamically retrieve correct IP address

When I create a container it shows the ip address.  I can retrieve that ip address with the below command.
cmd="az container show \
-n $CONTAINER \
--query ipAddress.ip \
-o tsv \
-g $RG"

The problem is, that is not the ip address under which the container actually runs.  When checking container logs in azure portal, I see the error that says the server is trying to connect to my database under a different ip.  I need that ip to be able to configure server firewall.
  az sql server firewall-rule create \
  -g $DB_RG \
  -s $DB_SERVER \
  -n $FIREWALL_RULE \
  --start-ip-address $IP \
  --end-ip-address $IP

How to retrieve the correct ip dynamically so it can be set in create-container script?

@shortpoet This repo is used to track issues for the aci-deploy action only.


keyword case with FOR ALL ENTRIES

It looks like the keyword case rule gives me a false positive on Selects with FOR ALL ENTRIES:
    SELECT FROM vekp
    FIELDS exidv
    FOR ALL ENTRIES IN @lt_hus
    WHERE vekp~exidv = @lt_hus-package_no
    INTO TABLE @DATA(lt_sub_vekp).

abaplint Message:
"Identifiers should be lower case: "FOR" (keyword_case)"
I also don't understand why excluding FOR in the rules doesn't have any effect (I also tried "^FOR"):
        "keyword_case": {
        "exclude": [],
        "severity": "Error",
        "style": "upper",
        "ignoreExceptions": true,
        "ignoreLowerClassImplmentationStatement": true,
        "ignoreGlobalClassDefinition": false,
        "ignoreGlobalInterface": false,
        "ignoreFunctionModuleName": false,
        "ignoreGlobalClassBoundaries": false,
        "ignoreKeywords": [ "FOR" ]
        },

thanks, reproduced

@OberstVonGatow try again, 2.77.3 published
depending on what you are using, it might not be updated yet
docker images update in an hour or so, vscode extension not updated yet, currently updating abaplint.app

Thanks for the quick fix 👍


Slow odo watch and push

I will be referring a lot to following directories :

destination dir - the directory where assemble scripts looks for source code (usually /tmp/src or the same as working dir `/opt/app-root/src')
deployment dir - the directory to which assemble script moves compiled artifacts, and run script runs it from this directory (usually /deployments)
working dir - this is where assemble script usually builds the source code (usually /opt/app-root/src)

This problem has two parts:
Copying files to backup dirs to work around assemble moving files to different dirs
Two main issues that are represented by python and java builder images:
moving sources from destination to working dir  (python)
Python builder image is a representative example of this behavior.
One of the first steps that python's assemble script does is that it moves files from destination dir to working dir. This causes problems with watch, multiple pushes, and with propagating deleted files
more in issues  https://github.com/redhat-developer/odo/issues/1054 https://github.com/redhat-developer/odo/issues/988
TODO(kadel): add more info description about this problem
Odo works around this by backup up all files from working dir, to backup dir (/opt/app-root/src-backup) and then restoring this backup into destination dir after assemble script is finished.
moving compiled artifacts out of /opt/app-root/src (java)
Java builder images are good representative example fo this behavior.
assemble scripts moves all compiled artifacts into deployment dir.
The problem is that this deployment dir is not on volume. If the container is restarted, this files is lost because it is not part of the container image.
Odo works around this by backup up deployment dir into /opt/app-root/deployment-backup and then restoring this into deployment dir before run script is executed.
No hot reloads
We are not doing hot reloads, all application updates require a restart.
This can be costly especially for java apps, and even for some nodejs apps.

I am planning to experiment with hard links

The biggest problem is the moving files around. We can make it faster, but it is going to be just more complex workaround.
Even if we make this work, there will be no guarantees that it will be a generic solution for any s2i image.
S2I is good, but also too flexible for our use case.
We should try to solve this inside the S2I builder images.
We can come up with some rules/restrictions and extensions for S2I image that will make builder images "odo compatible" and work with image maintainers to implement it into the "official" s2i images.
Even if we have to temporary maintain a few forked images, it will be better than constantly finding workarounds and while fixing it for one image, breaking it for the other.
/cc @sspeiche @jorgemoralespou @GrahamDumpleton @bparees

I am planning to experiment with hard links instead of cp will post the metrics once done with experiments

Hard links does not work when across filesystems/PVs. So, we should try to have everything on the same filesystem, in the PV, using subPath https://docs.openshift.com/container-platform/3.11/dev_guide/volumes.html#volumes-specifying-a-subpath, if that means that some of the original /deployments or /tmp/src would need to be linked to a real directory under the PV /opt/app-root in a subPath manner. This change would probably need to happen by the initContainer or the start process of the main container.

We can come up with some rules/restrictions and extensions for S2I image that will make builder images "odo compatible" and work with image maintainers to implement it into the "official" s2i images.

we've had a hard enough time creating an s2i community of images today (most of the ones that exist are created/maintained by us).  I'd really hate to see us further fracture that ecosystem.
Allowing an s2i image to indicate something that lets you optimize the behavior is one thing, but requiring it is, imho, problematic.
This is why I originally said the hot-reload mechanism should allow the user to indicate the command/script to be run on code update.
If a user can:

indicate the set of filesystem paths to watch for changes
indicate the script to run when those paths change

then I would think you can address both of these problems.

@bparees having the user indicating the paths on the images goes against zero-configuration (or close to zero) requirement in an opinionated tool, hence the idea of curating the images or asking for extensions to s2i.
Seems that as s2i will not evolve, neither some of the other mechanisms available today are good enough, the only possible option is to modify/update some s2i images to support this use-cases while still being s2i compliant, which means an assemble script that does everything. We've looked at other options, but we would still want to be able to support an OpenShift OOTB outer loop experience leveraging s2i. Things might change with knative builds, or some other vendor providing what we haven't been able to.

@bparees having the user indicating the paths on the images goes against zero-configuration (or close to zero) requirement in an opinionated tool, hence the idea of curating the images or asking for extensions to s2i.

you can have defaults/pick up defaults from image labels.

@bparees This is what @kadel referred in his comment that we should do, work with image maintainers to add these as labels into the images, and at least, create a curated set of images we know will work in odo.
If I understand correctly your comment now, what you're against is for odo to not properly work if the image has not the labels, and we should allow the user to provide these in such scenarios, preventing from making the labels a hard requisite on the images to work. Right?
If yes, then we agree, although we don't think users would go that route. Most likely, they would do either of:

Modify the image (if they can control it)
Provide custom .s2i scripts that would adhere to the requirements set to odo

We could potentially, support the latter with the user providing the name of the script, in .s2i/bin so that original assemble can be kept as it is. The main concern here, would be, how different builds/result would be when in inner and outer loop. But definitely a possibility.

If I understand correctly your comment now, what you're against is for odo to not properly work if the image has not the labels, and we should allow the user to provide these in such scenarios, preventing from making the labels a hard requisite on the images to work. Right?

right.

should we consider this for beta @kadel ? I would prefer it to be consider for GA

Document describing odo builder image https://docs.google.com/document/d/1Cj4ZXmsaQ-S9NDvrPaAb90i5I4yQg8gYQ8KQ41gIawc/edit?ts=5c87bdfe

Resolved with the introduction of partial uploads #1488 and optimized inner loop scripts for NodeJS and Java #2023 (this also solves problems with moving files outside of the destinations directory (only for Java and NodeJS)

/close


Source Class selection missing from item sheet

I recently installed this module for a player who is multiclassing a few caster classes, however am having some issues.  The Source Class part of the item sheet is missing, and I receive a few errors in the console.  The below screenshot is a test performed in an entirely new/clean world with only this (and libWrapper) enabled.
Errors:
TypeError: Cannot read properties of undefined (reading 'split')
[Detected 1 package: spellbook-assistant-manager]
at levelup.js:14:62
at Hooks._call (foundry.js:294:14)
at Hooks.call (foundry.js:279:33)
at ActorSheet5eCharacter._render (foundry.js:3117:13)
at async ActorSheet5eCharacter._render (foundry.js:3764:5)
TypeError: Cannot read properties of undefined (reading 'name')
[Detected 1 package: spellbook-assistant-manager]
at levelup.js:28:119
at Hooks._call (foundry.js:294:14)
at Hooks.call (foundry.js:279:33)
at ItemSheet5e._render (foundry.js:3117:13)
at async ItemSheet5e._render (foundry.js:3764:5)

fixed

I still get an error with the latest version, v0.2.01 installed
foundry.js:319 TypeError: Cannot read properties of undefined (reading 'sheetClass')
[Detected 1 package: spellbook-assistant-manager]
    at levelup.js:5:42
    at Function._call (foundry.js:294:14)
    at Function.call (foundry.js:279:33)
    at ActorSheet5eCharacter._render (foundry.js:3117:13)
    at async ActorSheet5eCharacter._render (foundry.js:3764:5)

foundry.js:319 TypeError: Cannot read properties of undefined (reading 'sheetClass')
[Detected 1 package: spellbook-assistant-manager]
    at levelup.js:57:42
    at Function._call (foundry.js:294:14)
    at Function.call (foundry.js:279:33)
    at ItemSheet5e._render (foundry.js:3117:13)
    at async ItemSheet5e._render (foundry.js:3764:5)


Any Tool over 5s fails in official hosted version

The maximum length of API calls when using tools seems to be only 5s in the hosted version, I believe it's related to this issue: https://stackoverflow.com/questions/68771480/nextjs-vercel-504-error-function-invocation-timeout
This is the exact error:
An error occurred with your deployment

FUNCTION_INVOCATION_TIMEOUT

Will investigate!

@MartianInGreen Yeah so looks like you'd just need to upgrade plans with Vercel. The code is running on their servers so they have to charge for compute time.

I'm not hosting it myself, it's the version hosted under https://www.chatbotui.com/

Mh okay, if I can do anything to help let me know. I've tested both with and without VPN and with multiple location, two devices and two different API and consistently get the error.

Me too! This is my schema tool:
{
"openapi": "3.0.0",
"info": {
"title": "Web Content Scraper",
"description": "A tool to scrape the text content from a web page",
"version": "1.0.0"
},
"servers": [
{
"url": "https://api.openai.com/v1"
}
],
"paths": {
"/scrape": {
"post": {
"summary": "Scrape web page content",
"operationId": "scrapeWebContent",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The URL of the web page to scrape"
}
},
"required": ["url"]
}
}
}
},
"responses": {
"200": {
"description": "Successful response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebContent"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"WebContent": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The title of the web page"
},
"content": {
"type": "string",
"description": "The text content of the web page"
}
}
}
}
}
}


Improve opentracing logs

One-line summary
Small fixes on the open tracing integration.
Description

make sure there are no NPEs during calls to the OpenTracing Java library
only server-side errors (5xx) are tagged with an error on the server span, while client-side errors (4xx) are considered fine

Types of Changes
What types of changes does your code introduce? Keep the ones that apply:

Bug fix (non-breaking change which fixes an issue)
Refactor/improvements

👍

👍


Xdebug protocol support / PHPStorm support

Is there any roadmap to support PHPStorm? It seems to me that the easiest way without the need for cooperation from Jetbrains (or other IDEs' developers) would be to implement the same protocol as Xdebug does, but I have no idea whether such thing is at least considered.
Or are there any other considerations how to make Yasd compatible with IDEs?
This problem currently blocks our migration to PHP 8, which is kind of painful. We would gladly migrate to Yasd after there is support for PHPStorm, but until then it feels like there is no workaround. Terminal debugging is quite user unfriendly compared to PHPStorm. Not every developer has enough experience to use CLI debugging.
Thank you in advance for feedback.

Oh I just found some info about IDE Support:
IDE debug mode

zend_extension=yasd
yasd.debug_mode=remote
yasd.remote_host=<IP_ADDRESS>
yasd.remote_port=9000

Will this work for PHPStorm?

Oh I just found some info about IDE Support:
IDE debug mode

zend_extension=yasd
yasd.debug_mode=remote
yasd.remote_host=<IP_ADDRESS>
yasd.remote_port=9000

Will this work for PHPStorm?

yes!
---Original---
From: "Martin<EMAIL_ADDRESS>Date: Mon, Jan 11, 2021 22:13 PM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: Re: [swoole/yasd] Xdebug protocol support / PHPStorm support (#76)
Oh I just found some info about IDE Support:
IDE debug mode zend_extension=yasd yasd.debug_mode=remote yasd.remote_host=<IP_ADDRESS> yasd.remote_port=9000
Will this work with PHPStorm?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

yes!
---Original---
From: "Martin<EMAIL_ADDRESS>Date: Mon, Jan 11, 2021 22:13 PM
To<EMAIL_ADDRESS>Cc<EMAIL_ADDRESS>Subject: Re: [swoole/yasd] Xdebug protocol support / PHPStorm support (#76)
Oh I just found some info about IDE Support:
IDE debug mode zend_extension=yasd yasd.debug_mode=remote yasd.remote_host=<IP_ADDRESS> yasd.remote_port=9000
Will this work with PHPStorm?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

thank you! :) I just found this https://github.com/swoole/yasd/releases/tag/v0.2.0 ...
BTW maybe it would help to update readme specifically with information about VSCode and PHPStorm support.

thank you! :) I just found this https://github.com/swoole/yasd/releases/tag/v0.2.0 ...
BTW maybe it would help to update readme specifically with information about VSCode and PHPStorm support.


Flatpack failed with exit code 1, flatpack-builder is installed

[x] I have read the contribution documentation for this project.
[x] I agree to follow the code of conduct that this project follows, as appropriate.
[x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

Please describe your issue:

Console output when you run electron-forge with the environment variable DEBUG=electron-forge:*. (Instructions on how to do so here). Please include the stack trace if one exists.
Making for the following targets:
  electron-forge:hook could not find hook: preMake +5ms
  electron-forge:lifecycle Process Started: Making for target: deb - On platform: linux - For arch: x64 +4ms
  electron-forge:lifecycle Process Succeeded: Making for target: deb - On platform: linux - For arch: x64 +58s
  electron-forge:lifecycle Process Started: Making for target: rpm - On platform: linux - For arch: x64 +4ms
  electron-forge:lifecycle Process Succeeded: Making for target: rpm - On platform: linux - For arch: x64 +5m
  electron-forge:lifecycle Process Started: Making for target: flatpak - On platform: linux - For arch: x64 +4ms
  electron-forge:lifecycle Process Failed: Making for target: flatpak - On platform: linux - For arch: x64 +11s

An unhandled error has occurred inside Forge:
An error occured while making for target: flatpak
flatpak-builder failed with status code 1
Error: flatpak-builder failed with status code 1
    at ChildProcess.child.on (/home/spaceboyross/SherwoodArch/src/ide/node_modules/flatpak-bundler/index.js:74:16)
    at emitTwo (events.js:125:13)
    at ChildProcess.emit (events.js:213:7)
    at maybeClose (internal/child_process.js:887:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:208:5)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>make: `electron-forge make`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>make script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/spaceboyross/.npm/_logs/2018-10-16T16_44_31_351Z-debug.log

What command line arguments are you passing?
npm run build

What does your config.forge data in package.json look like?
"make_targets": {
        "win32": [
          "squirrel"
        ],
        "darwin": [
          "zip"
        ],
        "linux": [
          "deb",
          "rpm",
          "flatpak"
        ]
      },
      "electronPackagerConfig": {
        "packageManager": "npm"
      },
      "electronWinstallerConfig": {
        "name": "SAIDE"
      },
      "electronInstallerDebian": {
        "categories": [
          "Development"
        ]
      },
      "electronInstallerRedhat": {},
      "github_repository": {
        "owner": "Ross-Technologies",
        "name": "SherwoodArch"
      },
  "windowsStoreConfig": {
    "packageName": "saide",
    "name": "SAIDE"
  }
}

Please provide either a failing minimal testcase (with a link to the code) or detailed steps to
reproduce your problem. Using electron-forge init is a good starting point, if that is not the
source of your problem.
Install flatpack-builder on Arch Linux, then run npm run build.

Can you run DEBUG='electron-installer-flatpak*,flatpak-bundler*' npm run build?

npm ERR! missing script: build

npm ERR!

Replace npm run build with whatever you use to make distributables, npm run make is the default for Forge.

Oh, typo

flatpak-bundler 2> Failed to init: Unable to find sdk org.freedesktop.Sdk version 1.4

This is the problem. Either flatpak-builder or electron-installer-flatpak used to download the SDKs automatically for us, but this is no longer the case. You'll need to download the flatpak prerequisites in order to build a flatpak distributable. It would be nice if those modules could tell us about that specific error instead of flatpak-builder failed with status code 1.
As an alternative to downloading flatpak prerequisites, you can use a Docker container that's also used by the Electron Forge testsuite.

It worked now