2023. 11. 13. 21:55ㆍ카테고리 없음
결론 : 넥서스의 제약조건 설정에서 디스크의 여유공간을 4GB 이상 걸어둔 것때문에 경고가 떠서 발생하였음...
내얼굴에 침뱉기인가...
서론 : Linux에서 curl명령을 이용해 배포본을 nexus저장소에 업로드하려 했다. 갑자기 잘되던 녀석이 아래와 같이 오류가 뿜뿜.... 왜그래... 오류좀 상세히 알려주지.... 500 에러 달랑...흠....
curl -v --user '???:????' --upload-file ./dist.tar "http://......................../dist.tar"
* Trying ..........................
* TCP_NODELAY set
* Connected to ........................... (#0)
* Server auth using Basic with user 'admin'
> PUT ................................/dist.tar HTTP/1.1
> Host: ..............................
> Authorization: Basic ..........................
> User-Agent: curl/7.68.0
> Accept: */*
> Content-Length: 61409280
> Expect: 100-continue
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 100 Continue
* We are completely uploaded and fine
* Mark bundle as not supporting multiuse
< HTTP/1.1 500 Server Error
< Server: Nexus/3.50.0-01 (OSS)
< X-Content-Type-Options: nosniff
< Content-Security-Policy: sandbox allow-forms allow-modals allow-popups allow-presentation allow-scripts allow-top-navigation
< X-XSS-Protection: 1; mode=block
< X-Frame-Options: DENY
< Content-Length: 0
본론 : 개발서버를 접속해서 로그파일(제일 아래 exception참고)까지 뒤졌더니...
4GB이상 남아야 동작한다는군... 최소 4GB는 남겨두는 친굴세...
그기아이고! 니가 4GB 여유공간을 최소 확보해야한다는 제약조건을 지정해서 그런거야!
2023-11-13 18:38:26,016+0900 ERROR [delete-path-15-thread-1] admin org.sonatype.nexus.repository.maintenance.internal.DeleteFolderServiceImpl - Failed to delete an asset - skipping.
com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'component' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="component"
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkLowDiskSpaceRequestsAndReadOnlyConditions(OAbstractPaginatedStorage.java:5073)
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:1729)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:541)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:99)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2908)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2870)
at org.sonatype.nexus.repository.storage.StorageTxImpl.commit(StorageTxImpl.java:196)
at sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.sonatype.nexus.common.stateguard.SimpleMethodInvocation.proceed(SimpleMethodInvocation.java:53)
at org.sonatype.nexus.common.stateguard.MethodInvocationAction.run(MethodInvocationAction.java:39)
at org.sonatype.nexus.common.stateguard.StateGuard$TransitionImpl.run(StateGuard.java:193)
at org.sonatype.nexus.common.stateguard.TransitionsInterceptor.invoke(TransitionsInterceptor.java:57)
at org.sonatype.nexus.common.stateguard.StateGuardAspect$1.invoke(StateGuardAspect.java:66)
at com.sun.proxy.$Proxy227.commit(Unknown Source)
at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:69)
at org.sonatype.nexus.transaction.TransactionInterceptor.proceedWithTransaction(TransactionInterceptor.java:66)
at org.sonatype.nexus.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:55)
at org.sonatype.nexus.repository.storage.DefaultComponentMaintenanceImpl.deleteAsset(DefaultComponentMaintenanceImpl.java:94)
at org.sonatype.nexus.common.stateguard.MethodInvocationAction.run(MethodInvocationAction.java:39)
at org.sonatype.nexus.common.stateguard.StateGuard$GuardImpl.run(StateGuard.java:272)
at org.sonatype.nexus.common.stateguard.GuardedInterceptor.invoke(GuardedInterceptor.java:54)
at org.sonatype.nexus.repository.storage.DefaultComponentMaintenanceImpl.deleteAsset(DefaultComponentMaintenanceImpl.java:85)
at org.sonatype.nexus.common.stateguard.MethodInvocationAction.run(MethodInvocationAction.java:39)
at org.sonatype.nexus.common.stateguard.StateGuard$GuardImpl.run(StateGuard.java:272)
at org.sonatype.nexus.common.stateguard.GuardedInterceptor.invoke(GuardedInterceptor.java:54)
at org.sonatype.nexus.repository.maintenance.internal.DeleteFolderServiceImpl.deleteAsset(DeleteFolderServiceImpl.java:153)
at org.sonatype.nexus.repository.maintenance.internal.DeleteFolderServiceImpl.deleteFolder(DeleteFolderServiceImpl.java:117)
at org.sonatype.nexus.repository.maintenance.internal.MaintenanceServiceImpl.lambda$0(MaintenanceServiceImpl.java:112)
at org.sonatype.nexus.thread.internal.MDCAwareRunnable.run(MDCAwareRunnable.java:40)
at org.apache.shiro.subject.support.SubjectRunnable.doRun(SubjectRunnable.java:120)
at org.apache.shiro.subject.support.SubjectRunnable.run(SubjectRunnable.java:108)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
2023-11-13 18:39:49,742+0900 ERROR [nexus_QuartzSchedulerThread] *SYSTEM com.orientechnologies.orient.core.storage.impl.local.paginated.OLocalPaginatedStorage - Exception `54E6F9AF` in storage `plocal:C:/nexus-3.50.0-01-win64/sonatype-work/nexus3/db/config`: 2.2.37 (build a7541e7ceeabf592dd9a7b2928b6c023cbc73193, branch 2.2.x)
com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'config' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="config"
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkLowDiskSpaceRequestsAndReadOnlyConditions(OAbstractPaginatedStorage.java:5073)
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:1729)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:541)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:99)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2908)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2870)
at org.sonatype.nexus.orient.transaction.OrientTransaction.commit(OrientTransaction.java:74)
at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:69)
at org.sonatype.nexus.transaction.Operations.proceedWithTransaction(Operations.java:237)
at org.sonatype.nexus.transaction.Operations.transactional(Operations.java:228)
at org.sonatype.nexus.transaction.Operations.call(Operations.java:171)
at org.sonatype.nexus.orient.transaction.OrientOperations.call(OrientOperations.java:55)
at org.sonatype.nexus.quartz.internal.orient.JobStoreImpl.acquireNextTriggers(JobStoreImpl.java:947)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:287)
2023-11-13 18:39:49,742+0900 ERROR [nexus_QuartzSchedulerThread] *SYSTEM com.orientechnologies.orient.core.db.OPartitionedDatabasePool$DatabaseDocumentTxPooled - $ANSI{green {db=config}} Error on transaction commit `54E6F9AF`
com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'config' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="config"
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkLowDiskSpaceRequestsAndReadOnlyConditions(OAbstractPaginatedStorage.java:5073)
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:1729)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:541)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:99)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2908)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2870)
at org.sonatype.nexus.orient.transaction.OrientTransaction.commit(OrientTransaction.java:74)
at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:69)
at org.sonatype.nexus.transaction.Operations.proceedWithTransaction(Operations.java:237)
at org.sonatype.nexus.transaction.Operations.transactional(Operations.java:228)
at org.sonatype.nexus.transaction.Operations.call(Operations.java:171)
at org.sonatype.nexus.orient.transaction.OrientOperations.call(OrientOperations.java:55)
at org.sonatype.nexus.quartz.internal.orient.JobStoreImpl.acquireNextTriggers(JobStoreImpl.java:947)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:287)
2023-11-13 18:39:49,742+0900 WARN [nexus_QuartzSchedulerThread] *SYSTEM org.sonatype.nexus.quartz.internal.orient.JobStoreImpl - Problem acquiring next triggers
com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'config' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="config"
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkLowDiskSpaceRequestsAndReadOnlyConditions(OAbstractPaginatedStorage.java:5073)
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:1729)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:541)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:99)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2908)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2870)
at org.sonatype.nexus.orient.transaction.OrientTransaction.commit(OrientTransaction.java:74)
at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:69)
at org.sonatype.nexus.transaction.Operations.proceedWithTransaction(Operations.java:237)
at org.sonatype.nexus.transaction.Operations.transactional(Operations.java:228)
at org.sonatype.nexus.transaction.Operations.call(Operations.java:171)
at org.sonatype.nexus.orient.transaction.OrientOperations.call(OrientOperations.java:55)
at org.sonatype.nexus.quartz.internal.orient.JobStoreImpl.acquireNextTriggers(JobStoreImpl.java:947)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:287)
2023-11-13 18:39:49,758+0900 ERROR [nexus_QuartzSchedulerThread] *SYSTEM org.quartz.core.ErrorLogger - An error occurred while scanning for the next triggers to fire.
org.quartz.JobPersistenceException: com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'config' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="config"
at org.sonatype.nexus.quartz.internal.orient.JobStoreImpl.acquireNextTriggers(JobStoreImpl.java:957)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:287)
Caused by: com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'config' due to limited free space on the disk (4094 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 4096 MB. Required space is now set to 4096MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
DB name="config"
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkLowDiskSpaceRequestsAndReadOnlyConditions(OAbstractPaginatedStorage.java:5073)
at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:1729)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:541)
at com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:99)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2908)
at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2870)
at org.sonatype.nexus.orient.transaction.OrientTransaction.commit(OrientTransaction.java:74)
at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:69)
at org.sonatype.nexus.transaction.Operations.proceedWithTransaction(Operations.java:237)
at org.sonatype.nexus.transaction.Operations.transactional(Operations.java:228)
at org.sonatype.nexus.transaction.Operations.call(Operations.java:171)
at org.sonatype.nexus.orient.transaction.OrientOperations.call(OrientOperations.java:55)
at org.sonatype.nexus.quartz.internal.orient.JobStoreImpl.acquireNextTriggers(JobStoreImpl.java:947)
... 1 common frames omitted
그나저나 500 에러 뜰때 그런내용을 response에 담아서 알려줄순 없는거니...
비하인드 스토리 :
우측과 같이 배포본 쓰레기 녀석들 언제 다지우냐...
귀차나.....
아아아아아아아으으으으으으ㅡ 어어어어어어어
[0ㅐ2쟈보ㅓ3래ㅑㅓㅁㄷ9ㅓㅎ0ㅓ2ㅈ3=0][4소ㅓ90멎ㄷ랴ㅐ어ㅞㅐㅇ먀ㅏㅡㅎ[ㅔ뱌ㅐ3머즈케ㅐㅑ츠ㅁㄴㅇ 퍄ㅓㅠㅜㅁㄷㄱ;ㅣㅏㅇㄶ류ㅡㅍㅋㅁㄴ;ㅣ을'나ㅡㅇ르ㅑㅜ[ㅂ9ㅕ423ㅠㅜㅎ[9ㅕㅗㅜ[내ㅑㅓㅏㄹ0][9ㅓ230ㅂ4ㅑ허무ㅠ[ㅐㅇㄴ'ㅣ르,ㅍㅐ,ㅂㅁ23ㅈ]4ㅏㅓㄷㅅ효ㅔ-09ㅐㅏㅁㅂ3ㅈ4-[게0ㅅ9ㅐㅑㅏ-02ㅏ4ㅓ호-ㅐㅠ]9ㅔㅈ[마ㅡ,';ㅣㄷ<ㅆㄹ
:ㅖ2ㅅㅎ
아쉽게도 디스크레벨에서 폴더 삭제하는 형태로 되어 있지 않음.
참고로 API를 이용해서 하려니 이거원 더 골치하프네;;
하여 일일히..... 다지움! 내시간 돌리도~!
ChatGPT 한테 물어도 이건 어쩔수 없구만...
아래는 GhatGPT 답변...