HDFS-15869. Network issue while FSEditLogAsync is executing RpcEdit.logSyncNotify can cause the namenode to hang

I propose a fix for HDFS-15869.

Thanks @Hexiaoqiao for your review. I have added the multi-threaded executor for it.
For the exception handling part, I observe the original semantics of RpcEdit
https://github.com/apache/hadoop/blob/aaedc51d8783c2808563d5c8b51b68ab79e19820/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogAsync.java#L379-L387
and SyncEdit
https://github.com/apache/hadoop/blob/aaedc51d8783c2808563d5c8b51b68ab79e19820/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSEditLogAsync.java#L347-L353
Therefore, we don't need to add any extra handling mechanism.
I have checked the test of TestEditLogRace and TestEditLog in my local machine. It passes all the tests. Let's see if there are other tests that fail.

@functioner would you mind to add unit test to cover this improvement?

@functioner would you mind to add unit test to cover this improvement?

I'm writing a unit test to cover this improvement. After I read the test cases of TestEditLog and TestEditLogRace, I think we can try to add a test similar to TestEditLogRace#testDeadlock. My current design is basically adding an Edit which intentionally sleeps for a while in its logSyncNotify method, blocking the next Edit, and test if the next Edit can finish soon.
However, if we use this design, the test needs to access some private methods and classes in FSEditLogAsync. I think maybe it's not a good idea to change some modifiers in FSEditLogAsync. Can we use something like @exposeToTest? (sorry that I don't have experience in this part). Or can you come up with a better design? @Hexiaoqiao @jojochuang @ayushtkn @linyiqun Thanks.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 55s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
32m 33s

trunk passed

+1 :green_heart:
compile
1m 20s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
1m 13s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
checkstyle
1m  1s

trunk passed

+1 :green_heart:
mvnsite
1m 22s

trunk passed

+1 :green_heart:
javadoc
0m 55s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 25s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m  8s

trunk passed

+1 :green_heart:
shadedclient
16m 14s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
1m 10s

the patch passed

+1 :green_heart:
compile
1m  9s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
1m  9s

the patch passed

+1 :green_heart:
compile
1m  6s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
javac
1m  6s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 52s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 1 new + 2 unchanged - 0 fixed = 3 total (was 2)

+1 :green_heart:
mvnsite
1m 11s

the patch passed

+1 :green_heart:
javadoc
0m 45s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 19s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m  7s

the patch passed

+1 :green_heart:
shadedclient
16m  3s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
730m  2s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 45s

The patch does not generate ASF License warnings.

815m 32s

Reason
Tests

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

hadoop.hdfs.TestDecommission

hadoop.hdfs.TestDistributedFileSystemWithECFile

hadoop.hdfs.TestRollingUpgradeDowngrade

hadoop.hdfs.TestPersistBlocks

hadoop.hdfs.TestDFSShell

hadoop.hdfs.server.namenode.ha.TestStandbyIsHot

hadoop.hdfs.server.balancer.TestBalancerWithHANameNodes

hadoop.hdfs.server.mover.TestMover

hadoop.hdfs.server.namenode.TestFsck

hadoop.hdfs.server.namenode.snapshot.TestSnapshotDeletion

hadoop.hdfs.server.namenode.TestCacheDirectivesWithViewDFS

hadoop.hdfs.TestFetchImage

hadoop.hdfs.TestDistributedFileSystemWithECFileWithRandomECPolicy

hadoop.hdfs.server.namenode.ha.TestPendingCorruptDnMessages

hadoop.hdfs.server.namenode.ha.TestStandbyBlockManagement

hadoop.hdfs.server.namenode.TestListOpenFiles

hadoop.hdfs.server.namenode.TestCacheDirectives

hadoop.hdfs.TestDecommissionWithBackoffMonitor

hadoop.hdfs.tools.TestDFSAdminWithHA

hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor

hadoop.hdfs.TestDFSInotifyEventInputStreamKerberized

hadoop.hdfs.server.namenode.TestNamenodeRetryCache

hadoop.hdfs.server.balancer.TestBalancerService

hadoop.hdfs.server.namenode.ha.TestPipelinesFailover

hadoop.hdfs.server.datanode.TestBlockScanner

hadoop.hdfs.server.diskbalancer.command.TestDiskBalancerCommand

hadoop.hdfs.server.namenode.snapshot.TestNestedSnapshots

hadoop.hdfs.server.namenode.TestStoragePolicySatisfierWithHA

hadoop.hdfs.TestHDFSFileSystemContract

hadoop.hdfs.web.TestWebHdfsFileSystemContract

hadoop.fs.viewfs.TestNNStartupWhenViewFSOverloadSchemeEnabled

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/2/artifact/out/Dockerfile

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

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

uname
Linux 36ed91d4be9c 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / aaedc51d8783c2808563d5c8b51b68ab79e19820

Default Java
Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/2/testReport/

Max. process+thread count
2867 (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-2737/2/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

@Hexiaoqiao Thanks for the comment, I removed logSyncNotifyExecutor.shutdown().
I think we also need to add some comments in the code to show why we don't shutdown this executor, in case some developers may get confused, because at the first glance it's also normal for people to think that this executor should shutdown on close.
Furthermore, I think your argument implies that the FSEditLogAsync is singleton in terms of the namenode process, otherwise we may create multiple executors without shutting down any of them. Is FSEditLogAsync really always singleton (now & future)?

I think we also need to add some comments in the code to show why we don't shutdown this executor, in case some developers may get confused, because at the first glance it's also normal for people to think that this executor should shutdown on close.

+1.

Furthermore, I think your argument implies that the FSEditLogAsync is singleton in terms of the namenode process, otherwise we may create multiple executors without shutting down any of them. Is FSEditLogAsync really always singleton (now & future)?

IMO, it is true that FSEditLogAsync is singleton instance for NameNode process.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
0m 36s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
34m  1s

trunk passed

+1 :green_heart:
compile
1m 21s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
1m 16s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
checkstyle
1m  2s

trunk passed

+1 :green_heart:
mvnsite
1m 19s

trunk passed

+1 :green_heart:
javadoc
0m 54s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 24s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m  4s

trunk passed

+1 :green_heart:
shadedclient
16m  4s

branch has no errors when building and testing our client artifacts.

-0 :warning:
patch
16m 23s

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 12s

the patch passed

+1 :green_heart:
compile
1m 13s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
1m 13s

the patch passed

+1 :green_heart:
compile
1m  9s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
javac
1m  9s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 52s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 1 new + 2 unchanged - 0 fixed = 3 total (was 2)

+1 :green_heart:
mvnsite
1m 11s

the patch passed

+1 :green_heart:
javadoc
0m 45s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 16s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m  6s

the patch passed

+1 :green_heart:
shadedclient
15m 52s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
231m 29s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 45s

The patch does not generate ASF License warnings.

317m 56s

Reason
Tests

Failed junit tests
hadoop.hdfs.server.balancer.TestBalancer

hadoop.hdfs.server.blockmanagement.TestUnderReplicatedBlocks

hadoop.hdfs.qjournal.server.TestJournalNodeRespectsBindHostKeys

hadoop.hdfs.server.namenode.snapshot.TestNestedSnapshots

hadoop.hdfs.server.datanode.TestDirectoryScanner

Subsystem
Report/Notes

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

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

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

uname
Linux f6092b2b51d2 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / bbc76cc242d2ba7c79924d77adab96a30d7eb013

Default Java
Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

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

Max. process+thread count
3144 (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-2737/3/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

@functioner after review code, comment from Yiqun seems not resolved yet, do you mind to make thread pool size be configurable?

@Hexiaoqiao thanks for the reminder. I've added:

comments for removing logSyncNotifyExecutor.shutdown()
configuration for the size of logSyncNotifyExecutor
the docs for that configuration

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
1m  0s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  1s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
34m 44s

trunk passed

+1 :green_heart:
compile
1m 23s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
1m 15s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
checkstyle
1m  1s

trunk passed

+1 :green_heart:
mvnsite
1m 21s

trunk passed

+1 :green_heart:
javadoc
0m 55s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 26s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m 11s

trunk passed

+1 :green_heart:
shadedclient
16m 57s

branch has no errors when building and testing our client artifacts.

-0 :warning:
patch
17m 15s

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 13s

the patch passed

+1 :green_heart:
compile
1m 21s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
1m 21s

the patch passed

+1 :green_heart:
compile
1m  9s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
javac
1m  9s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 58s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 3 new + 463 unchanged - 0 fixed = 466 total (was 463)

+1 :green_heart:
mvnsite
1m 14s

the patch passed

+1 :green_heart:
xml
0m  1s

The patch has no ill-formed XML file.

+1 :green_heart:
javadoc
0m 47s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 17s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m 22s

the patch passed

+1 :green_heart:
shadedclient
17m 12s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
417m  5s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 41s

The patch does not generate ASF License warnings.

506m 48s

Reason
Tests

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

hadoop.hdfs.TestViewDistributedFileSystemContract

hadoop.hdfs.server.blockmanagement.TestBlockTokenWithDFS

hadoop.hdfs.TestPersistBlocks

hadoop.hdfs.TestDFSShell

hadoop.hdfs.TestLeaseRecovery

hadoop.hdfs.server.datanode.fsdataset.impl.TestFsVolumeList

hadoop.fs.viewfs.TestViewFileSystemOverloadSchemeWithHdfsScheme

hadoop.hdfs.TestStateAlignmentContextWithHA

hadoop.hdfs.server.namenode.ha.TestSeveralNameNodes

hadoop.fs.viewfs.TestViewFSOverloadSchemeWithMountTableConfigInHDFS

hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor

hadoop.hdfs.TestLeaseRecovery2

hadoop.hdfs.server.namenode.ha.TestEditLogTailer

hadoop.hdfs.server.namenode.ha.TestPipelinesFailover

hadoop.hdfs.server.datanode.TestBlockScanner

hadoop.hdfs.server.datanode.TestIncrementalBrVariations

hadoop.hdfs.server.namenode.snapshot.TestNestedSnapshots

hadoop.hdfs.qjournal.server.TestJournalNodeRespectsBindHostKeys

hadoop.hdfs.server.datanode.TestDirectoryScanner

hadoop.hdfs.TestHDFSFileSystemContract

hadoop.hdfs.server.namenode.ha.TestBootstrapStandby

hadoop.hdfs.web.TestWebHdfsFileSystemContract

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/4/artifact/out/Dockerfile

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

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell xml

uname
Linux da07e6c90844 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / b751835d361fbab6a03ca6827c1cf02626f33b04

Default Java
Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/4/testReport/

Max. process+thread count
3148 (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-2737/4/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
1m  0s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  1s

codespell was not available.

+1 :green_heart:
@author
0m  0s

The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s

The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
33m 57s

trunk passed

+1 :green_heart:
compile
1m 19s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
compile
1m 14s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
checkstyle
1m  3s

trunk passed

+1 :green_heart:
mvnsite
1m 20s

trunk passed

+1 :green_heart:
javadoc
0m 54s

trunk passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 23s

trunk passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m  5s

trunk passed

+1 :green_heart:
shadedclient
16m  2s

branch has no errors when building and testing our client artifacts.

-0 :warning:
patch
16m 20s

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.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javac
1m 11s

the patch passed

+1 :green_heart:
compile
1m  5s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
javac
1m  5s

the patch passed

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

-0 :warning:
checkstyle
0m 54s
/results-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs-project/hadoop-hdfs: The patch generated 3 new + 463 unchanged - 0 fixed = 466 total (was 463)

+1 :green_heart:
mvnsite
1m 18s

the patch passed

+1 :green_heart:
xml
0m  2s

The patch has no ill-formed XML file.

+1 :green_heart:
javadoc
0m 48s

the patch passed with JDK Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04

+1 :green_heart:
javadoc
1m 16s

the patch passed with JDK Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

+1 :green_heart:
spotbugs
3m 10s

the patch passed

+1 :green_heart:
shadedclient
16m  2s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

-1 :x:
unit
458m 45s
/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt
hadoop-hdfs in the patch passed.

+1 :green_heart:
asflicense
0m 45s

The patch does not generate ASF License warnings.

545m 26s

Reason
Tests

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

hadoop.hdfs.TestViewDistributedFileSystemContract

hadoop.hdfs.TestPersistBlocks

hadoop.hdfs.TestDFSShell

hadoop.hdfs.server.datanode.fsdataset.impl.TestFsVolumeList

hadoop.fs.viewfs.TestViewFileSystemOverloadSchemeWithHdfsScheme

hadoop.hdfs.server.blockmanagement.TestAvailableSpaceRackFaultTolerantBPP

hadoop.hdfs.TestStateAlignmentContextWithHA

hadoop.fs.viewfs.TestViewFileSystemOverloadSchemeHdfsFileSystemContract

hadoop.hdfs.TestViewDistributedFileSystemWithMountLinks

hadoop.hdfs.server.namenode.ha.TestSeveralNameNodes

hadoop.fs.TestSymlinkHdfsFileSystem

hadoop.fs.viewfs.TestViewFSOverloadSchemeWithMountTableConfigInHDFS

hadoop.hdfs.server.namenode.TestDecommissioningStatusWithBackoffMonitor

hadoop.hdfs.server.namenode.ha.TestEditLogTailer

hadoop.hdfs.server.datanode.TestBlockScanner

hadoop.hdfs.server.diskbalancer.command.TestDiskBalancerCommand

hadoop.hdfs.server.namenode.snapshot.TestNestedSnapshots

hadoop.hdfs.qjournal.server.TestJournalNodeRespectsBindHostKeys

hadoop.hdfs.server.datanode.TestDirectoryScanner

hadoop.hdfs.TestHDFSFileSystemContract

hadoop.hdfs.server.namenode.ha.TestBootstrapStandby

hadoop.hdfs.web.TestWebHdfsFileSystemContract

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/5/artifact/out/Dockerfile

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

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell xml

uname
Linux 5028b1276e33 4.15.0-65-generic #74-Ubuntu SMP Tue Sep 17 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
trunk / 3c57512d104e3a92391c9a03ce4005a00267c07f

Default Java
Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Multi-JDK versions
/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.10+9-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_282-8u282-b08-0ubuntu1~20.04-b08

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-2737/5/testReport/

Max. process+thread count
3044 (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-2737/5/console

versions
git=2.25.1 maven=3.6.3 spotbugs=4.2.2

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

This message was automatically generated.

@functioner would you mind to submit addendum blank commit to trigger CI again. Just notice that there are many failed unit tests but it seems not related to this PR(not very sure), Let's wait what Yetus says.
@linyiqun @daryn-sharp @amahussein Do you mind give another reviews here? if no more other comments. I would like to commit it shortly.

@functioner would you mind to submit addendum blank commit to trigger CI again. Just notice that there are many failed unit tests but it seems not related to this PR(not very sure), Let's wait what Yetus says.
@linyiqun @daryn-sharp @amahussein Do you mind give another reviews here? if no more other comments. I would like to commit it shortly.

@functioner @Hexiaoqiao , I have another comment for logSyncNotifyExecutor close, please see my above comment.

The discussion on PR #2878 and HDFS-15957 sounds to be around the same concept.
By definition, if there is a "network issue", the NameNode in general because all RPCs will be problematic. So what makes that  `call.sendResponse(); call get a special treatment compared RPC in the NameNode?
I do not see a bug.

Network issues are not fixed by delegating the notifications to a pool of thread. This hides the symptoms of the problems and makes it way difficult to the detect the original problem.
This code is potentially adding a major overhead because of the lambda expression that implies triggering a sequence of object allocations inside each iteration. "More allocations" lead to: slow executions,  means more GC, more frequent Full-GC, ..etc.

-1 on this patch.

@amahussein Thanks for the comment.
Can I send an email to you to explain more about the issue? @Hexiaoqiao and I have some more discussion on it, and some discussion is inconvenient to put in here. You can contact me via<EMAIL_ADDRESS>or<EMAIL_ADDRESS>and then I will reply.

@amahussein Thanks for your quick response. I think this is not the same concept/issue between HDFS-15957 and HDFS-15869. I have leave comment at HDFS-15869 and suggest to change it to improvement rather than bug fix; (cc @functioner)
IMO, this is a classic Producer-Consumer problem, and it is natural idea to improve performance using parallel way. And Yiqun has reported the same issue at HDFS-15486. In my own production env it was about 5% E2E saving time for write operation.
My suggestion,
A. Update description for improvement rather than bug fix.
B. If any concerns about lambda expression, we could improve it rather than reject it directly.
Welcome any more discussion. Thanks everyone here.

@amahussein Thanks for your quick response. I think this is not the same concept/issue between HDFS-15957 and HDFS-15869. I have leave comment at HDFS-15869 and suggest to change it to improvement rather than bug fix; (cc @functioner)
IMO, this is a classic Producer-Consumer problem, and it is natural idea to improve performance using parallel way. And Yiqun has reported the same issue at HDFS-15486. In my own production env it was about 5% E2E saving time for write operation.
My suggestion,
A. Update description for improvement rather than bug fix.
B. If any concerns about lambda expression, we could improve it rather than reject it directly.
Welcome any more discussion. Thanks everyone here.

Thanks @Hexiaoqiao Hexiaoqiao for the comment.
Ok, is the purpose of the change is to improve performance of the FSEditLogAsync.java by executing sendResponse() in parallel?
In that case, please change the title of the Jira and the description to remove references to "hanging" problems.
Then I will take another look. I am sorry for the inconvenience as I want to make sure I understand the purpose of the change before revieweing.

@amahussein Thanks for the comment.
Can I send an email to you to explain more about the issue? @Hexiaoqiao and I have some more discussion on it, and some discussion is inconvenient to put in here. You can contact me via<EMAIL_ADDRESS>or<EMAIL_ADDRESS>and then I will reply.

Thanks @functioner ! I really appreciate that.
I think @Hexiaoqiao Hexiaoqiao reply already clarified some of the confusion about the scope of the work.
Please feel free to reach me through email at anytime. I am on the common-dev mailing list.

If any concerns about lambda expression, we could improve it rather than reject it directly.

@amahussein A common way to eliminate such overhead is preparing multiple consumer threads, and feed them with requests.
If the lambda expressions cause significant overhead, we can improve in that way.
This design pattern is widely used in Cassandra. Example: SEPWorker - SEPExecutor
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPWorker.java
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPExecutor.java

In that case, please change the title of the Jira and the description to remove references to "hanging" problems.

@amahussein I still would like to argue about this "hanging" issue.
There has been reported TCP network I/O issues which hangs for >15min without throwing any exception. ZOOKEEPER-2201 is a perfect example, and you can find the TCP level explanation for this hanging issue in https://www.usenix.org/conference/srecon16/program/presentation/nadolny
Similar hanging bugs are also accepted by ZooKeeper community, such as:

ZOOKEEPER-3531: very similar to ZK-2201; the patch is merged
ZOOKEEPER-4074: a similar network hanging bug I reported; already confirmed by community; more discussion can be found in https://github.com/apache/zookeeper/pull/1582

However, in our scenario (HDFS-15869), a possible counterargument is: the call.sendResponse() invocation eventually invokes channel.write(buffer) (line 3611), which is non-blocking mode, so it might not be affected by this potential issue.
https://github.com/apache/hadoop/blob/3c57512d104e3a92391c9a03ce4005a00267c07f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java#L3607-L3616
However, as we point out in HDFS-15869, when the payload is huge,  in line 3611, it won't invoke channel.write(buffer); instead, it invokes channelIO(null, channel, buffer) which brings us to:
https://github.com/apache/hadoop/blob/3c57512d104e3a92391c9a03ce4005a00267c07f/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java#L3646-L3672
If the payload is split in two batches, the second batch will have to wait for the first batch to be sent out, which may encounter high packet loss rate and thus slow I/O.
Hence, I would say the hanging problem still exists.

In that case, please change the title of the Jira and the description to remove references to "hanging" problems.

@amahussein I still would like to argue about this "hanging" issue.

Another aspect of the argument is the design of availability and fault tolerance. Actually distributed systems can tolerate such hanging issues in many scenarios, but sometimes it's seen as a bug like ZOOKEEPER-2201.
So an important question is: when it's a bug; and when it's not (i.e., it's a feature)
I've been doing research on fault injection for some time and I have submitted multiple bug reports accepted by the open source community (e.g., HADOOP-17552). My criteria for determining whether it is bug, are:

if we inject a fault in module X and it only affects module X, then it’s not a bug.
if we inject a fault in module X and it affects not only module X but also module Y which should not relate to module X, then probably it would be a bug, because in the system design, each module should be responsible for itself and report the problem (e.g., by logging), rather than affect another irrelevant module.

In our scenario (HDFS-15869), this possible hanging (if you agree with my argument of network hanging) can block the FSEditLogAsync thread, because now call.sendResponse() is invoked by the FSEditLogAsync thread.
So, call.sendResponse() (network service) affects FSEditLogAsync (edit log sync service). So, I would say it's a bug.
The network service should be responsible for all its behaviors, and handle all the possible network issues (e.g., IOException, disconnection, hanging). It should determine how to handle them, e.g., by logging the error, rather than affecting other services like FSEditLogAsync.
I'm not saying that we have to use a complete and slow RPC framework for this network service. But IMO, decoupling it from FSEditLogAsync by delegating to a thread pool is at least a better design.

Thanks @functioner
The detailed discussions (except the lambda argument) should have been on the Jira.
Now, I am really even more confused about the (Bug Vs. Improvement). So, I am going to pass on reviewing.

If any concerns about lambda expression, we could improve it rather than reject it directly.

@amahussein A common way to eliminate such overhead is preparing multiple consumer threads, and feed them with requests.
If the lambda expressions cause significant overhead, we can improve in that way.
This design pattern is widely used in Cassandra. Example: SEPWorker - SEPExecutor
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPWorker.java
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPExecutor.java

This is not what I meant. It is recommended to avoid use of lambda expressions in hot execution paths.
There are so many ways to avoid lambda expressions simply by having runnables waiting for tasks to be added to a queue.

Thanks @functioner
The detailed discussions (except the lambda argument) should have been on the Jira.

I see. I will make a comment of summary in Jira after the discussion in this PR is finalized.

If any concerns about lambda expression, we could improve it rather than reject it directly.

@amahussein A common way to eliminate such overhead is preparing multiple consumer threads, and feed them with requests.
If the lambda expressions cause significant overhead, we can improve in that way.
This design pattern is widely used in Cassandra. Example: SEPWorker - SEPExecutor
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPWorker.java
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/concurrent/SEPExecutor.java

This is not what I meant. It is recommended to avoid use of lambda expressions in hot execution paths.

Actually we are on the same page. Maybe my comment has made some confusion.

There are so many ways to avoid lambda expressions simply by having runnables waiting for tasks to be added to a queue.

That's exactly what I meant. I will push a commit soon.

@functioner Can you move forward with this MR? I can help with review.  If you don't have time, I can resign this ticket to other contributor.

@functioner Can you move forward with this MR? I can help with review. If you don't have time, I can resign this ticket to other contributor.

@ZanderXu According to the discussion so far, Daryn has some doubt on the issue and patch. Do you have any idea to move forward the case?

Thanks for your works and discussions for this problem. I spent a long time to catch your ideas and concerns😂, it's so hard.
I have some throughs and questions about this ticket.
Some questions in HDFS-15869:

The channel.write(buffer) operation in line 3594 may be slow. Although for this specific stack trace, the channel is initialized in the non-blocking mode, there is still a chance of being slow depending on native write implementation in the OS (e.g., a kernel issue). Furthermore, the channelIO invocation in line 3594 may also get stuck, since it waits until the buffer is drained:

ret = (readCh == null) ? writeCh.write(buf) : readCh.read(buf); will return 0 if namenode cannot write more data to this connection, right?  RpcEdit,logSyncNotify will add this response into the queue of this connection and let the Responder to take this job, right? So FSEditLogAsync can go to process the next jobs, right?
Some throughs in HDFS-15869:
Actually, I encountered this problems in our prod environment that the thread FSEditLogAsync spends a little more time to send responses to clients, which had a big performance impact on writing edits to JNs. So I just use a new single thread to do these send response jobs. Of course, we can use multiple threads to send responses to client. New task is very expensive, so we use a producer-consumer mode to fix this problem.

FSEditLogAsync just put task into a capacity blocking Queue.
ResponseSender thread take tasks from the Queue and send them to clients.

About "Bug" or "Improvement", I think it should be a performance improvement, since all processes are worked as expected, no blocking or hanging, just slow.
Some throughs in HDFS-15957:

I think namenode should directly close this connection if IOException happens in RpcEdit,logSyncNotify, since we cannot let the client hang forever. It seems that the namenode drops a request.

@functioner  Looking forward your ideas and confirm.
@daryn-sharp @Hexiaoqiao @linyiqun @amahussein Looking forward your ideas. I hope we can push this ticket forward.

If I missed some other concerns, please let me know, we can find solutions together to push this ticket forward.


Add separating csv files for each patient with "Play Stimulus" feature

Separate output for each patient with  "Play Stimulus" feature (e.g. "Name_Date.csv")
Add patient note once finishing "Play Stimulus" work

I'm not sure about the lang_trial dataset. Does this need to be under .gitignore? Please let me know before you merge this request! Thanks.

Ngyuen and I had a conversation regarding to lang_trial data, and it's fine to merge it to main.


v3.0.1 introduces breaking change: no longer can be used in CJS

Hi again!
Your change for my previous ticket broke support for using vaca in CJS packages. I don't think that was intentional, as it wasn't a major bunmp.
Could we add "main": "./main.js" to the package.json?
Or an exports that supports both import and require?

It was never documented as being available as an API. It was just accidentally available because of the looseness of CJS.

https://github.com/sindresorhus/vaca/releases/tag/v3.0.2


Bump API Load Balancer timeout

It currently is set to 60s and it makes kubectl run -it and port-forward et al break if no data is sent for >60s.  This should be bumped to something more reasonable.

This isn't as critical as if we were using it for internal communication but still something we should up to the max of 3600s.


PkiMessageEncoder constructor hardcodes in the signature algorithm as SHA1 based

Describe the bug
If I use the constructor for PkiMessageEncoder where I include a certificate chain, the signature algorithm is set to SHA1withRSA with no means to change it.  I would like to be able to change it to SHA256 or better.
public PkiMessageEncoder(final PrivateKey signerKey,
            final X509Certificate signerId, final X509Certificate[] chain,
            final PkcsPkiEnvelopeEncoder enveloper) {
        this.signerKey = signerKey;
        this.signerId = signerId;
        this.chain = chain;
        this.enveloper = enveloper;
        this.signatureAlgorithm = "SHA1withRSA";
    }

@jervin can you create a pull request and reference this item?

https://github.com/jscep/jscep/pull/219
This has been fixed


Why the accuracy of pretrained resnet50 model is very low

Test: [2570/5000]       Time 0.024 (0.060)      Loss 19.2762 (18.3547)  Acc@1 0.000 (0.117)    Acc@5 0.000 (0.381)
This is the recognition result on test dataset of imagenet.

I have been using the same pretrained model and this is either a wrong model or an incomplete one.
You can download this here.
https://github.com/rwightman/pytorch-image-models/releases/download/v0.1-weights/seresnet50_ra_224-8efdb4bb.pth


[Autocomplete] Options are hidden under Diaolg

When used in a dialog the input will be visible but the options will be hidden under the dialog.

[ x ] The issue is present in the latest release.
[ x  ] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
The options are hidden behind the dialog.
Expected Behavior 🤔
The options should be visible above the dialog if the input is in the dialog.
Steps to Reproduce 🕹
https://codesandbox.io/s/material-demo-ss585?fontsize=14
Steps:

Open The Dialog with the 'Open simple Dialog' button.
Try to use the Autocomplete

Context 🔦
I have a short form within a dialog that I want to use the Autocomplete in.
Your Environment 🌎

Tech
Version

Material-UI
v4.5.2

Material-UI/lab
4.0.0-alpha.30

React
16.8.6

Browser
chrome

Duplicate of #18082 should be fixed in the next release.


NIFI-8023 Test failure after NIFI-7996 commit if system default TZ is…

… CET
Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
Description of PR
Enables X functionality; fixes bug NIFI-YYYY.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically main)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[x] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[x] Have you verified that the full build is successful on JDK 8?
[x] Have you verified that the full build is successful on JDK 11?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI for build issues and submit an update to your PR as soon as possible.

Looking at the issue in more detail, did you evaluate AvroTypeUtil.convertToAvroObject() and how it handles the LOGICAL_TYPE_DATE?  The current implementation converts from java.sql.Date.getTime() to Instant, using Instant.ofEpochMilli() and passes in the milliseconds from java.sql.Date.getTime().
Since java.sql.Date does not include the timezone, the ChronoUnit.DAYS.between() calculation returns a different number of days depending on the JVM timezone.
Changing AvroTypeUtil.convertToAvroObject() line 669 to use java.sql.Date.toLocalDate().toEpochDay() results in both tests working without any changes, and appears to operate according to the original intent of the method.

Thanks @exceptionfactory for the review. Actually your recommended change is the revert of the original commit that caused these test to fail (see: https://github.com/apache/nifi/commit/83948db989bf2f682dfa18c56293ec431f546e1c#diff-98d8c798133bf7b6d8a2b49a35139863b6ac85c6001787a62b3c6117abafb440L669)
I think we have a more generic issue, using java.sql.Date for representing dates is not the best solution. Being a subclass of java.util.Data means that under the hood it stores the time too, just doesn't expose it.
Storing the time leads to a "date skew" issue: when 2020-11-20 is represented as 2020-11-20 00:00 UTC but if later it's converted to a different timezone (e.g. EST, UTC-5) the same instant is presented as 2020-11-19 19:00 EST, thus the date part has changed.
This case is covered by a newly added test case: https://github.com/apache/nifi/blob/main/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestConvertRecord.java#L378
My opinion is that in case of dates time zone doesn't make sense (i.e. 2020-11-19 is the same date in every time zone, even if in some it starts earlier), that's why I removed the toLocalDate() call in the previously mentioned commit to fix this issue.
Unfortunately this led to these two failing tests, but I think the tests are incorrect.

Thanks for the background @adenes that is helpful to know.  I agree with you that the underlying issue is related to using java.sql.Date for representing dates without times.
Looking at the unit test you referenced in TestConvertRecord and stepping through the code, it looks like the better place to address the problem is in DataTypeUtils.toDate() where DateFormat.parse() creates a java.util.Date.  As you described, when walking through the unit test, the parse result returns a java.util.Date with a local time zone, which skews the resulting java.sql.Date.  Replacing DateFormat with LocalDate.parse() and using java.sql.Date.valueOf() avoids the skewed return value.  Making the change at that level would avoid the need to readjust values later on.
Making the change in DataTypeUtils.toDate() will probably have other consequences, but that seems like it is worth considering to get to the root of the problem.

Closing in favor of implementation in #4781

Closing in favor of implementation in #4781


Add mnemonic for Tsvn menu

So I‘m able to hit Alt+Mnemonic to open the menu quickly.
Edit: and also for all commands under this menu.
Unfortunately, all letters from Tsvn already have a mnemonic in the default VS installation menu. So there’s no unique key that could be used to directly jump to the menu.

Grab the new release! 🚀
Added keyboard shortcuts are listed here: https://github.com/sboulema/TSVN#keyboard-shortcuts

This is also great, but not what I wanted.
I meant the underlined characters in the menu text https://en.wikipedia.org/wiki/Mnemonics_(keyboard).

Ah ok small misunderstandig 😜
Quick investigation didn't reveal a way to add mnemonics in VS extensions.
Will look further if it is possible to do it!

https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.menuitem.mnemonic?view=netframework-4.7.2 indicates to me that you just need to add an ampersand & before the letter that should be underlined. When I was looking for that yesterday when I created the issue, you already commented and commited something so I stopped looking^^ Maybe try that with the &.

Extension menu items are not coming from System.Windows.Forms unfortunately.
They are coming from the VSCT file documented here: VSCT Button Element which doesn't say anything about mnemonics 😞

I just had a look at other extensions that I have installed and ReSharper has mnemonics. So it is possible but I don‘t know how.

Sometimes it is so easy... had to use & in the .vsct file 😁
Grab the new release! 🚀

Ah :D Thanks a lot for the quick implementation!

I just added a mnemonic for all top level Tsvn menus. I just changed the file but didn‘t build it, hopefully it doesn‘t break anything.


[New Port Request] CTK

Library name:  CTK
Library description:  A set of common support code for medical imaging, surgical navigation, and related purposes.
Source repository URL: https://github.com/commontk/CTK
Project homepage (if different from the source repository): http://commontk.org
Anything else that is useful to know when adding (such as optional features the library may have that should be included):

If you wish to add this port in the future, you can reopen this issue, but we're closing it for now, consider making a pull request instead.


[Bug Report] el-select showing value instead of label after update options and binding value in watch method

Element UI version
2.13.0
OS/Browsers version
macOS/Chrome80.0.3987.163
Vue version
2.6.11
Reproduction Link
https://codepen.io/v32vdqtgegf/pen/ZEbzawB
Steps to reproduce

pick an option
after 1sec delay it will show the updated value which label are expected

What is Expected?
show updated label
What is actually happening?
show value

try this
this.$nextTick(()=>{     this.value = "value6"; })

I have the same problem. It seems to only happen when the focus is on the Select Box.

you should not watch value, because will lead your code perform twice, you can console log like what i done,and you can find that it console two times which is not necessary.
instead watch change event, update the options in this function . do not put the options change code put in setTimeout,that will lead element not notice value change.
here is the code.
https://codepen.io/littledevil7/pen/jOWrzra?editors=1011


[yarn][beta] "engine node is incompatible" error

When I install the beta version (3.0.0-beta.9) of node-fetch with Yarn, Yarn returns an error:
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^10.17.0". Got "14.15.4"
error Found incompatible module.

So I have to force the installation with --ignore-engines.
Reproduction
Steps to reproduce the behavior:

Install Node.js version 14 (I use v14.15.4)
Install Yarn (sudo npm i -g yarn)
Create an empty folder, open it in a terminal
Install node-fetch version 3 beta with Yarn (yarn add --dev<EMAIL_ADDRESS>
Expected behavior
No error because v14 is the current stable version of Node.js.

Your Environment

software
version

node-fetch
3.0.0-beta.9

node
14.15.4

yarn
1.22.5

Operating System
macOS 11.4

Unable to reproduce.
This issue may be caused by an out of date package cache that is downloading a different version of fetch-blob than the one actually specified.

@Richienb I can reproduce it in a blank environment. More exact steps to reproduce:
mkdir test-project
cd test-project
yarn cache clean
yarn add --dev add<EMAIL_ADDRESS>
Output:
user@device ~ % mkdir test-project
user@device ~ % cd test-project
user@device test-project % yarn cache clean
yarn cache v1.22.5
success Cleared cache.
✨  Done in 27.51s.
user@device test-project % yarn add --dev add<EMAIL_ADDRESS>yarn add v1.22.5
info No lockfile found.
[1/4] 🔍  Resolving packages...
warning<EMAIL_ADDRESS>This release contains some TypeScript definition issues and we therefore recommend to update to the next version. Changelog: https://git.io/JfV1D
warning node-fetch ><EMAIL_ADDRESS>This release contains breaking changes, so it has been renamed to 2.0.0. Changelog: https://git.io/JfSDh
[2/4] 🚚  Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^10.17.0". Got "14.15.4"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

Same with the latest stable Node.js (v14.17.2)

Try running yarn init -y first before running the install command. Also, yarn add --dev add<EMAIL_ADDRESS>means you are installing both node-fetch and add modules.

@Richienb

Try running yarn init -y first before running the install command.

I get the same result.

Also, yarn add --dev add<EMAIL_ADDRESS>means you are installing both node-fetch and add modules.

My bad, sorry. I meant installing only node-fetch. Removing add doesn't change the result too.

Input/output
user@device ~ % mkdir test-project
user@device ~ % cd test-project
user@device test-project % yarn init -y
yarn init v1.22.5
warning The yes flag has been set. This will automatically answer yes to all questions, which may have security implications.
success Saved package.json
✨  Done in 0.04s.
user@device test-project % yarn cache clean
yarn cache v1.22.5
success Cleared cache.
✨  Done in 0.07s.
user@device test-project % yarn add --dev<EMAIL_ADDRESS>yarn add v1.22.5
info No lockfile found.
[1/4] 🔍  Resolving packages...
warning<EMAIL_ADDRESS>This release contains some TypeScript definition issues and we therefore recommend to update to the next version. Changelog: https://git.io/JfV1D
warning node-fetch ><EMAIL_ADDRESS>This release contains breaking changes, so it has been renamed to 2.0.0. Changelog: https://git.io/JfSDh
[2/4] 🚚  Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version "^10.17.0". Got "14.17.2"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

What are your Node.js and Yarn versions?

Just updated - can confirm.
The reason for the issue is because of the caret. It usually declares that the most recent minor version be used but because the development versions don't use semver, npm doesn't understand which version to fetch. Instead, use yarn add node-fetch@next or yarn add<EMAIL_ADDRESS>

It works, thank you

This is fixed in beta.10:
https://github.com/node-fetch/node-fetch/blob/b50fbc105755123cad34fb0bc9d5653ecc693b8a/package.json#L14

unfortunately "node-fetch": "^3.0.0-beta.10" would still fetch the wrong version. Sticking to fixed version for now.


Problems with EfficientNet v2 b0 inference in tf lite format

1. System information

OS Platform and Distribution: Windows 11
TensorFlow installation : pip
TensorFlow library: 2.18.0

2. Code
import tensorflow as tf
input_shape = (224, 224, 3)
inputs = tf.keras.Input(shape=input_shape)
model = tf.keras.applications.EfficientNetv2b0(
include_top=True,
weights='imagenet',
input_tensor=inputs
)
full_model = tf.keras.Model(inputs=inputs, outputs=model.outputs)
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
model.summary()
converter = tf.lite.TFLiteConverter.from_keras_model(full_model)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_model = converter.convert()
tf.lite.experimental.Analyzer.analyze(model_content=tflite_model, gpu_compatibility=True)
with open('EfficientNet_float32.tflite', 'wb') as f:
f.write(tflite_model)
print("TFLite model saved successfully.")

When I run inference in python, the model outputs the correct solutions. But model is much slower than in the onnx format . Results for TF lite: 0.145 for onnx: 0.0108   CPU: 6-core AMD Risen 5 7500F
When I run inference in Kotlin, the model outputs are incorrect. Model always gives the same wrong classes with less than 0.05 probs like nematode, microphone, matchstick . Also i can`t run inference on GPU or with using NNAPI on mobile phone.
I switched one of default model in this example from tf repo: https://github.com/tensorflow/examples/tree/master/lite/examples/image_classification/android

I used tf.lite.experimental.Analyzer.analyze(model_content=tflite_model, gpu_compatibility=True) and got it:  Your model looks compatible with GPU delegate on TFLite runtime version 2.18.0.
This does not guarantee that your model will work well with GPU delegate because there could still be runtime incompatibililties.

Hi, @feff2
Thank you for bringing this issue to our attention, I see this PR https://github.com/tensorflow/tensorflow/pull/74830 was merged on September 12, 2024 for Deprecating GPU compatibility experimental feature from both tf/compiler/mlir/lite:flatbuffer_export and tf/lite/python/analyzer_wrapper:model_analyzer but still we are getting below messages
Your model looks compatible with GPU delegate on TFLite runtime version 2.18.0-rc0.
This does not guarantee that your model will work well with GPU delegate because there could still be runtime incompatibililties.

You mentioned that the inference time for the TFLite model is significantly slower (0.145 seconds) compared to the ONNX model (0.0108 seconds). This could be due to several factors like model optimization so ensure that you are using optimizations effectively. You can try using quantization techniques to reduce the model size and improve inference speed. Please refer this official documentation and also check if your CPU is being fully utilized. Sometimes the model may not be optimized for the specific hardware you are using.
The model outputs incorrect classes with low probabilities when run in Kotlin. This could be due to input preprocessing so ensure that the input images are preprocessed in the same way as during training. This includes resizing, normalization and any other transformations.
If possible could you please help us with your Github repo replicate similar behavior along with complete steps which will be great to investigate this issue further ?
Thank you for your cooperation and patience.

Hi @gaikwadrahul8
I use this example: https://github.com/tensorflow/examples/tree/master/lite/examples/image_classification/android
I changed ImageClassifierHelper
ImageClassifierHelper.zip
I use the model that was created by the following code:
import tensorflow as tf
input_shape = (224, 224, 3)
inputs = tf.keras.Input(shape=input_shape)
model = tf.keras.applications.EfficientNetv2b0(
include_top=True,
weights='imagenet',
input_tensor=inputs
)
full_model = tf.keras.Model(inputs=inputs, outputs=model.outputs)
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
model.summary()
converter = tf.lite.TFLiteConverter.from_keras_model(full_model)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
tflite_model = converter.convert()
tf.lite.experimental.Analyzer.analyze(model_content=tflite_model, gpu_compatibility=True)
with open('EfficientNet_float32.tflite', 'wb') as f:
f.write(tflite_model)
print("TFLite model saved successfully.")
and  added metadata according to this documentation: https://ai.google.dev/edge/litert/models/metadata?hl=en

Hi, @feff2
I'm able to create model successfully with above provided code snippet for reference here is gist-file, if possible could you please help us with yout Github repo (along with complete steps) to replicate similar behavior from our end which will help us to investigate this issue further ?
Thank you for your cooperation and patience.


Module Widget doesn't provide a "natural sort oder" mode

Describe the bug
Split from #211
Modules should be able to be sorted in natural order just like in the details widget since c933cd1.
To Reproduce
Steps to reproduce the behavior:

Open or create any netlist
Create several modules with numbers of different length in their name in the same parent
e.g. "module_11" will come after "module_100" but before "module_101"

Expected behavior
Natural sort order should be able to be selected in settings, meaning numbers are sorted in ascending order, nor alphabetically (11 not after 100)
Screenshots

Closed in HAL 2.0


fix: build without git but GIT_SHA is provided

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
https://github.com/risingwavelabs/risingwave/issues/10277

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

Documentation

[ ] My PR contains user-facing changes.

Click here for Documentation
Types of user-facing changes
Please keep the types that apply to your changes, and remove the others.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note

https://buildkite.com/risingwavelabs/docker/builds/13790


Improvement/arsnn 1 export default configuration for maxsockets

The goal is to export the default configuration, to be compatible with a flexible usage of the library along with others like agentkeepalive, while enforcing the default configuration in the same way.

I believe we could as well use agentkeepalive as a basis to keep the philosophy of embedding the default config automatically. As far as I can remember, it should be a drop-in replacement for http/https and it has been used in S3C for a while without issue so it should be safe.

You are right, what I did is to introduce agentkeepalive and update the classes to extends the agentkeepalive's one. The default parameters will take place, by default. If needed, we can always override them in the projects.


Language navigation should be context aware

Currently the links of the language navigation are hardcoded to the english and german homepages but they should consider the current page as context. For example when serving on https://www.netcentric.biz/what-we-do the "DE" link in the header should point to https://www.netcentric.biz/de/what-we-do.html and vice versa.

fixed by https://github.com/Netcentric/cn-website/pull/239


Introduce virtualbox-extension-pack-beta

It was temp line for debugging purposes.

Thank you for your contribution.


etcd: add package option

Description of changes
I would like to add package option to etcd, because integrations such as coredns require more recent version than the default version to work. I would prefer to have this as a configuration option rather than make my own overlay to do it.
This is just a draft for now, please do let me know what you think!
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

cc @offline @zowoq @endocrimes

Ah, I see this is a duplicate of https://github.com/NixOS/nixpkgs/pull/202611
However, in my case it's useful. Unless I overwrite the package in my personal configuration, I cannot use the DNS integration which relies on the newer put semantic.
I have tested that unless I use the new package, the DNS entries do not show up. I wrote about this briefly in this issue: https://github.com/coredns/coredns/pull/5799

However, in my case it's useful.

I'm still concerned that this will cause problems for other people:

https://github.com/NixOS/nixpkgs/pull/202611#issuecomment-1326132739
it may actually be confusing for users at it implies that other versions could be used.

Why do you need this to be a module option? Why can't you override pkgs.etcd?

it may actually be confusing for users at it implies that other versions could be used.

On the flip side, what are these integrations (broadly speaking), and if those are known, could it be documented what packages have these implicit requirements and instead pin those?
As time passes, I would guess it to become more frequent that people spend time troubleshooting their configurations not because they haven't pinned their package version or decided to try their luck with a non-default option, but instead, because the default option is an old version.

Why can't you override pkgs.etcd?

I can, but that begs the question why are the 3.4 and 3.5 then packaged separately, if not for configuration ergonomics.
Nevertheless, I can see the tantrum with etcd and it being almost a thing of the past, but personally I don't think it should stop us from at least giving ergonomic options to use the latest software. With all the tooling that NixOS has for software rollbacks, I don't quite see why to be so afraid of people breaking their configurations with an opt-in feature -- if someone is running Kubernetes with 2018 configurations, they probably know they aren't on the bleeding edge. It's more confusing for me with a kernel built yesterday to pull in a package from 2018, when more up to date versions for that package exist even in the binary cache.

but that begs the question why are the 3.4 and 3.5 then packaged separately, if not for configuration ergonomics.

I added 3.4 with the intention of updating this module and others that depend on it to use it.

I can

I don't see any reason to merge this PR then.

Done in https://github.com/NixOS/nixpkgs/pull/233678.


Add missing kSecAttrSynchronizable type

I noticed this type is referenced in the documentation but isn't part of the TypeScript module definition.
This PR adds it to the types.

Awesome, thanks!!

Thanks for merging @mCodex! There's quite a lot of changes on master, will there be a new release soon?


Added new predicates - Allergy, BloodType, Country, MedInfo, Nric

But parser not able to pass the above prefixes except for Nric
Nric prefix changed from i/ to ic/ to differentiate from MedInfo

Pull Request Test Coverage Report for Build 299

0 of 36 (0.0%)  changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-1.4%) to 88.197%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/address/logic/parser/FindCommandParser.java
0
1
0.0%

src/main/java/seedu/address/model/person/AllergyContainsKeywordsPredicate.java
0
7
0.0%

src/main/java/seedu/address/model/person/BloodTypeContainsKeywordsPredicate.java
0
7
0.0%

src/main/java/seedu/address/model/person/CountryContainsKeywordsPredicate.java
0
7
0.0%

src/main/java/seedu/address/model/person/InfoContainsKeywordsPredicate.java
0
7
0.0%

src/main/java/seedu/address/model/person/NricContainsKeywordsPredicate.java
0
7
0.0%

Totals

Change from base Build 262:
-1.4%

Covered Lines:
2025

Relevant Lines:
2296

💛  - Coveralls


Did u2net face generation was trained with the same loss function?

Yes， it is also trained with BCE.

On Nov 21, 2020, at 11:12 PM, shgidi<EMAIL_ADDRESS>wrote:
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/NathanUA/U-2-Net/issues/97, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSGORLT4WU3XJZFTOAMGDLSRCTVHANCNFSM4T6ITCQA.

Thanks @NathanUA . Ine more question: did you use the same small dataset of 70 images?

We didn’t include the small set of 70 images in training.

On Nov 22, 2020, at 4:29 AM, shgidi<EMAIL_ADDRESS>wrote:
Thanks @NathanUA https://github.com/NathanUA . One more question: did you use the same small dataset of 70 images?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/NathanUA/U-2-Net/issues/97#issuecomment-731733367, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSGORLM5AZ5DLLA364DSPTSRDYYFANCNFSM4T6ITCQA.


Fix file reading failure in non-ascii path on not_impl_gen.py

===== MODULES =====
[2020-07-13T14:46:47Z ERROR rustpython] Failed reading file 'tests/snippets/whats_left_modules.py': InvalidData

I discovered a issue when launching ./whats_left.sh fails to read modules. Turns out it was because of non-ASCII path, so I created this small fix to solve this.
The issue is only confirmed on a Windows 10 machine with non-unicode codepage.

Thanks for contributing!


Suggestion: License

I strongly suggest adding an appropriate license to the project such as MIT or Apache 2.0 that respects the licensing requirements of the libraries used. Keep up the good work.
https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/adding-a-license-to-a-repository

Thank you for your suggestion! As of now, I have added the MIT license to the project repository.


Setup npm packages for the core and every provider

This is our most important step in order to be able to use Next.js Commerce outside of our current demo without making it difficult to get updates and bug fixes.
We should be able to have a npm package for every folder inside the framework folder inside this same repo under a new folder named packages. This is what we'll need:

A worskpace tool like npm workspaces or Lerna, whatever works best.
A tool that helps us quickly publish releases and updates of every package
Automatically create deployments of our demo as that's going to be our main testing ground, this can probably be as simple as updating our settings in vercel.com
Publish every package as a ES module, Next.js already supports ES modules behind a flag and will be the default with Next.js 12

For the moment we want every provider to be inside the repo as we work on making the Next.js Commerce API stable, and that's ideal if we want to test every provider in our current demo, but that's not a requirement for any provider once we have working npm packages.

Did you also consider using yarn workspaces ? Speedwise Yarn workspaces wins over using lerna.
We also used yarn with similar setup & are actually building our own UI packages -> packages/ui as a yarn workspace package & moved nextjs commerce inside of an apps/shop - workspace/folder


Invariant Violation: Invalid prop fontSize of type string supplied to StyleSheet generated, expected number.

I'm getting this error -
Invariant Violation: Invalid prop `fontSize` of type `string` supplied to `StyleSheet generated`, expected `number`.
StyleSheet generated: {
  "letterSpacing": 0.25,
  "fontSize": "1.5em",
  "lineHeight": 24,
  "color": "\"blue\""
}

When I have given this in the code
const RelativeText = styled.Text`
  ${({balance, theme}) => `
    letter-spacing: 0.25;
    font-size: 1.5em;
    line-height: 24;
    color: "blue"
  `}
`;

Ah, you're using React Native? My hunch here is it doesn't support em values, can you try with px or a bare number?

That's correct, react-native doesn't support relative text sizing units.

Ok but px can be responsive? or on different devices will behave differently?


Metadata rendering

Given the planned branch(es) which will

refactor summary, protocol
make navbar dropdown to group menu items (currently the list is too long)
extract common parts of rulesets/summary/protocol into common component
add unit tests
separate common functions from constants.ts
this PR is ready to go.


Adding Grade F Prime Beef

Initial commit

Good catch! Fixed it...

I merged this to the wrong branch but then cherry-picked it into main.


Need more details about availibity set in VMSS

The doc https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/overview  mentionned the following :
VMSS  : Automatic distribution of VM instances across Availability Zones or Availability Sets
I also read a book said as below

I would like to verfiy two things
Question 1 : Is availability set has interconnection with  placement group ?  ( so over 100 instances in VMSS will be in multiple different avaibility sets ? )
Question 2 : Is availability set by defaut is 2 faut domains and 5 update domains. but in the book mentionned 5 faut domains and 5 update domains ?  So how could I calculate the SLA in this case ?
NOTE : all these questions ignore the discussion with availability zones, because the region where I deployed my solution, AZ is not available..
Reference :
More information about SLA of Azure VMs and VMSS  :
https://azure.microsoft.com/en-us/support/legal/sla/virtual-machines/v1_8/
Thank you !
Azure documentation issue guidance
Thanks for opening an issue in the Azure technical documentation repository.
We use GitHub issues as the primary channel for customer and community feedback about the Azure documentation.
Creating an issue
We prefer that you create documentation feedback issues using the Feedback link on the published article - the feedback control on the doc page creates an issue that contains all the article details so you can focus on the feedback part.
You can also create a feedback issue here in the repo. If you do this, please make sure your issue lists:

[ ] The relevant Azure service or technology.
[ ] A link to the published documentation article that you have feedback about.
[ ] Clear, specific feedback that the author can act on.

Pull requests and article contributions
If you know the change that is needed in an article, we encourage you to submit the changes directly using a pull request. If the change is large, or if you want to contribute an entire article, follow these guidelines:

[ ] Don't surprise us with a big pull request or a pull request with a new article! Submit an issue that describes the details of the proposed large change or new article.
[ ] Include the service or technology area.

We'll route the issue to the appropriate content team for review and discussion.
Tech support and product feedback
If you would like to contact Microsoft about other things, such as product feedback or tech support, please review these guidelines:

If you need technical support using Azure, the paid and free support options are described here: https://azure.microsoft.com/support/options/.

Each article in the Azure technical documentation contains a product feedback button - it's best to submit product feedback directly from a relevant article. Otherwise, you can submit product feedback for most Azure products in the following product feedback forum: https://feedback.azure.com/forums/34192--general-feedback.

@cloudmelon Thanks for your feedback! We will investigate and update as appropriate.

The placement group is just a logical naming convention. When you have over 100 VMs then rather than sticking all the VMs into the same Availability set we will create multiple availability sets with multiple fault domains and update domains and spread your VMSS instances out across them. So it could be something like VMs 1-20 are in AVset1, 21-40 are in AVset2, etc... If we placed all the VMs in the same availability set say with 5 update domains and 5 fault domains there would not be enough domains to fit all machines without duplication of domains.

If you create a new AV set the default is 2 fault domains and 5 update domains. You can configure this via the portal when creating or via the script you are deploying with

The SLA link you provided states how we calculate up time. Just because you have more fault domains does not mean the SLA calculation changes. The calculation is set as long as you have a availability set with at least 2 VMs in the same AV set.  You still take into account all the VMs up time and downtime and can calculate the up time percentage.
One thing to note in question 1, if you wanted to calculate the SLA (Up time) for all the VMs you would have to separate them all into the AV sets. As in you could not take the 100+ VMs and find SLA. Rather you would have to take all the VMs in each AV set and calculate it per AV set.

I will close this out for now. If you need additional help please let me know and we can reopen and continue.

Hi thanks for your excellent explanation !!
On Thu, Jul 12, 2018 at 9:10 PM, Micah<EMAIL_ADDRESS>wrote:

Closed #11553 https://github.com/MicrosoftDocs/azure-docs/issues/11553.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/11553#event-1731076284,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEaE-FTSoYq6tlcHs4gbxYQ9ue5BragJks5uF58hgaJpZM4VLLbU
.


LM-969: SAML - Update IDP to use SHA-256

Update to all references of SHA1 and replacing with SHA256.
Update to the onelogin properties file to specify a requirement for the SHA256 security algorithm in SAML requests.

Codecov Report

Merging #11 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #11   +/-   ##
=========================================
  Coverage     94.25%   94.25%
  Complexity      181      181
=========================================
  Files            26       26
  Lines           540      540
  Branches          7        7
=========================================
  Hits            509      509
  Misses           27       27
  Partials          4        4

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 13a5566...da8b518. Read the comment docs.


Showing file size on README.md

I think it would be nice if you put the download size of the datasets and pretrained models so people can know how much they have downloaded and how much more should they should wait.

repo ded


Warn users about wrong URL syntax in markdown

It's quite common for users to get mixed up with the URL syntax in markdown, and when someone puts the URL in the square brackets and the description in the parenthesis this can result in a non-clickable link.
It would be nice if the compose editor warned users about using the wrong syntax; this wouldn't be detectable in all cases, but there are some simple heuristics such as the description including the http:// string when the url doesn't, or the url not including periods, and perhaps if URL previews are enabled the users could be warned about the url not being reachable before the message is posted

Some sort of regular expression based check would probably be useful here. I'm not sure how easy it is to implement in a way without false positives, which is always the challenge with this of rule.
I'm more cautious about triggering network requests to URLs from your browser just because they appear in the compose box as that might have security concerns.

True, but I hope false positives would not be too much of a concern if the UI design for the warning was unobtrusive and easy to dismiss.
I agree re. the security concerns, but if the URL request check is made only when the user sends the message rather than while they are composing it, this wouldn't be much different from the request made to show URL previews (and if the realm blocks URL previews this feature should also be disabled presumably)


No Json saved, table asked

Hi!
Maybe I misconfigured this. I explain:
When creating a coupon, the administrator can link this coupon to a product, or to a product category. So I use this Multiselect.
My discount.php nova file :
Multiselect::make('Categories', 'categories')
                    ->belongsToMany(\App\Nova\Category::class)
                    ->nullable(true)
                    ->saveAsJSON()
                    ->hideFromIndex()  ,

Multiselect::make('Produits', 'products')
                    ->belongsToMany(\App\Nova\Product::class)
                    ->nullable(true)
                    ->saveAsJSON()
                    ->hideFromIndex()

My discount.php model file:
public function categories()
{
    return $this->belongsToMany(Category::class);
}

public function products()
{
    return $this->belongsToMany(Product::class);
}

In the discounts table, i have theses fields:
categories (text, nullable)
products (text, nullable)

But even by setting the saveAsJson to true, Nova asks me to create a table
category_discount
discount_product

And even with that, the linked products are indeed stored in the discount_product table, but the multiselect doesn't display them once the coupon is saved.
And nothing is saved for the categories.
What am I doing wrong?
Thanks a lot!

Hi! BelongsToMany relationships require a pivot table. You should replace the ->belongsToMany(\App\Nova\Product::class) with ->asyncResource(\App\Nova\Product::class).

Hi @Tarpsvo !
Thank you for your answer.
It's better!
There is one last concern:
When i update / create:

... everything is ok in my table.

But on the updated page, fields are not pre-filled.

Any ideas?
Thanks! <3
Vincent


INTMDB-301: Feature add: Add support for management of federated authentication configuration

Description
Add support for managment of federated authentication configuration
Link to any related issue(s):
https://jira.mongodb.org/browse/INTMDB-301
Type of change:

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Required Checklist:

[x] I have signed the MongoDB CLA
[x] I have added tests that prove my fix is effective or that my feature works
[ ] I have added any necessary documentation (if appropriate)
[x] I have run make fmt and formatted my code

Further comments

Tagging @blva @tibulca @fmenezes, can one of you review these Terraform PR's, following the guidance Andrea added to the wiki? Thanks!


[Dummy Data] Dummy Data for (Healthy) Human

@abuzatu please ask me here what you need to know about my past (health) data and i will update here.
Thanks

@banica @GeorgAC I did the simulation before with the dummy values using the current measurements from Marian https://github.com/banica/2023_NASA_Space_Apps_Hackathon_Modularity/blob/main/data/simulations/df_simulation_human_01_dummy.csv
and now added the new simulation assuming a decrease of the weight until end of year and then increase the weight only via muscle.
https://github.com/banica/2023_NASA_Space_Apps_Hackathon_Modularity/blob/main/data/simulations/df_simulation_human_02_plan.csv

@banica This should be combined with issue #6

@abuzatu i will close this issue and keep just #6