Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot delete entity with empty string partition key or row key #1211

Closed
joelverhagen opened this issue Dec 13, 2021 · 2 comments · Fixed by #1213
Closed

Cannot delete entity with empty string partition key or row key #1211

joelverhagen opened this issue Dec 13, 2021 · 2 comments · Fixed by #1213
Assignees
Labels
table-storage Relating to Azurite table storage implementation

Comments

@joelverhagen
Copy link
Contributor

joelverhagen commented Dec 13, 2021

Which service(blob, file, queue, table) does this issue concern?

table

Which version of the Azurite was used?

3.15.0

Where do you get Azurite? (npm, DockerHub, NuGet, Visual Studio Code Extension)

VS Code

What's the Node.js version?

16.13.0

What problem was encountered?

If a table entity has an entity with an empty string partition key or row key, delete fails with this error:

Unhandled exception. Azure.RequestFailedException: The specified entity already exists.
RequestId:31cbb679-74fb-4771-9222-59bb6eea65d5
Time:2021-12-13T03:31:17.594Z
Status: 409 (Conflict)
ErrorCode: EntityAlreadyExists

Content:
{"odata.error":{"code":"EntityAlreadyExists","message":{"lang":"en-US","value":"The specified entity already exists.\nRequestId:31cbb679-74fb-4771-9222-59bb6eea65d5\nTime:2021-12-13T03:31:17.594Z"}}}

Headers:
Server: Azurite-Table/3.15.0
x-ms-error-code: REDACTED
x-ms-request-id: 31cbb679-74fb-4771-9222-59bb6eea65d5
x-ms-version: REDACTED
Date: Mon, 13 Dec 2021 03:31:17 GMT
Connection: keep-alive
Keep-Alive: REDACTED
Transfer-Encoding: chunked
Content-Type: application/json; odata=minimalmetadata; streaming=true; charset=utf-8

   at Azure.Data.Tables.TableRestClient.InsertEntity(String table, Nullable`1 timeout, Nullable`1 responsePreference, IDictionary`2 tableEntityProperties, QueryOptions queryOptions, CancellationToken cancellationToken)
   at Azure.Data.Tables.TableClient.AddEntity[T](T entity, CancellationToken cancellationToken)
   at Program.<Main>$(String[] args) in C:\Users\joelv\Desktop\AzuriteSample\AzuriteSample\Program.cs:line 8

Steps to reproduce the issue?

using Azure.Data.Tables;

var tableClient = new TableServiceClient("UseDevelopmentStorage=true");
tableClient.CreateTableIfNotExists("table0");
var table = tableClient.GetTableClient("table0");
var entity = new TableEntity("", "rk");
table.AddEntity<TableEntity>(entity);
table.DeleteEntity(entity.PartitionKey, entity.RowKey);

Have you found a mitigation/solution?

Don't use an empty PK or RK. A constant, non-empty string works fine.

Logs

2021-12-13T04:37:24.791Z 	 info: Azurite Blob service is starting on 127.0.0.1:10000
2021-12-13T04:37:24.793Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2021-12-13T04:37:24.793Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2021-12-13T04:37:24.820Z 	 info: BlobGCManager:start() Starting BlobGCManager. Set status to Initializing.
2021-12-13T04:37:24.821Z 	 info: BlobGCManager:start() Trigger mark and sweep loop. Set status to Running.
2021-12-13T04:37:24.821Z 	 info: BlobGCManager:markSweepLoop() Start next mark and sweep.
2021-12-13T04:37:24.821Z 	 info: BlobGCManager:markSweep() Get all extents.
2021-12-13T04:37:24.822Z 	 info: BlobGCManager:start() BlobGCManager successfully started.
2021-12-13T04:37:24.836Z 	 info: BlobGCManager:markSweep() Got 0 extents.
2021-12-13T04:37:24.836Z 	 info: BlobGCManager:markSweep() Get referred extents.
2021-12-13T04:37:24.837Z 	 info: BlobGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2021-12-13T04:37:24.838Z 	 info: BlobGCManager:markSweepLoop() Mark and sweep finished, taken 17ms.
2021-12-13T04:37:24.838Z 	 info: BlobGCManager:markSweepLoop() Sleep for 600000ms.
2021-12-13T04:37:24.841Z 	 info: Azurite Blob service successfully listens on http://127.0.0.1:10000
2021-12-13T04:37:24.842Z 	 info: Azurite Queue service is starting on 127.0.0.1:10001
2021-12-13T04:37:24.843Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2021-12-13T04:37:24.843Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2021-12-13T04:37:24.878Z 	 info: QueueGCManager:start() Starting QueueGCManager, set status to Initializing
2021-12-13T04:37:24.878Z 	 info: QueueGCManager:start() Trigger mark and sweep loop, set status to Running.
2021-12-13T04:37:24.878Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2021-12-13T04:37:24.878Z 	 info: QueueGCManger:markSweep() Get all extents.
2021-12-13T04:37:24.879Z 	 info: QueueGCManager:start() QueueGCManager successfully started.
2021-12-13T04:37:24.879Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2021-12-13T04:37:24.879Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2021-12-13T04:37:24.880Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2021-12-13T04:37:24.880Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 2ms.
2021-12-13T04:37:24.880Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2021-12-13T04:37:24.882Z 	 info: Azurite Queue service successfully listens on http://127.0.0.1:10001
2021-12-13T04:37:24.883Z 	 info: Azurite Table service is starting on 127.0.0.1:10002
2021-12-13T04:37:24.883Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2021-12-13T04:37:24.883Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2021-12-13T04:37:24.894Z 	 info: Azurite Table service successfully listens on http://127.0.0.1:10002
2021-12-13T04:37:30.049Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: TableStorageContextMiddleware: RequestMethod=POST RequestURL=http://127.0.0.1/devstoreaccount1/Tables?$format=application%2Fjson%3Bodata%3Dminimalmetadata RequestHeaders:{"host":"127.0.0.1:10002","x-ms-version":"2019-02-02","dataserviceversion":"3.0","accept":"application/json;odata=minimalmetadata","x-ms-client-request-id":"c07bf4df-65f3-4a96-8e6b-97e4cd52e5b6","x-ms-return-client-request-id":"true","user-agent":"azsdk-net-Data.Tables/12.3.0 (.NET 6.0.0-rtm.21522.10; Microsoft Windows 10.0.22000)","x-ms-date":"Mon, 13 Dec 2021 04:37:29 GMT","authorization":"SharedKeyLite devstoreaccount1:pF3DsW3hXLBZ/KOHxzntsPtNM8RlpSnJow/QKBIFHkw=","content-type":"application/json;odata=nometadata","content-length":"22"} ClientIP=127.0.0.1 Protocol=http HTTPVersion=1.1
2021-12-13T04:37:30.049Z 8ba108e6-6549-4d38-b47c-55bb0518a087 debug: tableStorageContextMiddleware: Dispatch pattern string: /Tables
2021-12-13T04:37:30.050Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: tableStorageContextMiddleware: Account=devstoreaccount1 tableName=undefined
2021-12-13T04:37:30.050Z 8ba108e6-6549-4d38-b47c-55bb0518a087 verbose: DispatchMiddleware: Dispatching request...
2021-12-13T04:37:30.052Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: DispatchMiddleware: Operation=Table_Create
2021-12-13T04:37:30.052Z 8ba108e6-6549-4d38-b47c-55bb0518a087 verbose: AuthenticationMiddlewareFactory:createAuthenticationMiddleware() Validating authentications.
2021-12-13T04:37:30.052Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: TableSharedKeyLiteAuthenticator:validate() Start validation against account shared key authentication.
2021-12-13T04:37:30.053Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: TableSharedKeyLiteAuthenticator:validate() [STRING TO SIGN]:"Mon, 13 Dec 2021 04:37:29 GMT\n/devstoreaccount1/devstoreaccount1/Tables"
2021-12-13T04:37:30.054Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: TableSharedKeyLiteAuthenticator:validate() Calculated authentication header based on key1: SharedKeyLite devstoreaccount1:pF3DsW3hXLBZ/KOHxzntsPtNM8RlpSnJow/QKBIFHkw=
2021-12-13T04:37:30.054Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: TableSharedKeyLiteAuthenticator:validate() Signature 1 matched.
2021-12-13T04:37:30.055Z 8ba108e6-6549-4d38-b47c-55bb0518a087 verbose: DeserializerMiddleware: Start deserializing...
2021-12-13T04:37:30.059Z 8ba108e6-6549-4d38-b47c-55bb0518a087 debug: deserialize(): Raw request body string is (removed all empty characters) {"TableName":"table0"}
2021-12-13T04:37:30.060Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: HandlerMiddleware: DeserializedParameters={"options":{"queryOptions":{"format":"application/json;odata=minimalmetadata"},"requestId":"c07bf4df-65f3-4a96-8e6b-97e4cd52e5b6","dataServiceVersion":"3.0"},"version":"2019-02-02","tableProperties":{"tableName":"table0"},"body":"ReadableStream"}
2021-12-13T04:37:30.063Z 8ba108e6-6549-4d38-b47c-55bb0518a087 verbose: SerializerMiddleware: Start serializing...
2021-12-13T04:37:30.066Z 8ba108e6-6549-4d38-b47c-55bb0518a087 debug: Serializer: Raw response body string is {"odata.metadata":"http://127.0.0.1:10002/devstoreaccount1/$metadata#Tables/@Element","TableName":"table0"}
2021-12-13T04:37:30.066Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: Serializer: Start returning stream body.
2021-12-13T04:37:30.066Z 8ba108e6-6549-4d38-b47c-55bb0518a087 info: EndMiddleware: End response. TotalTimeInMS=17 StatusCode=201 StatusMessage=Created Headers={"server":"Azurite-Table/3.15.0","content-type":"application/json;odata=minimalmetadata","x-ms-client-request-id":"c07bf4df-65f3-4a96-8e6b-97e4cd52e5b6","x-ms-request-id":"8ba108e6-6549-4d38-b47c-55bb0518a087","x-ms-version":"2021-02-12","date":"Mon, 13 Dec 2021 04:37:30 GMT","preference-applied":"return-content"}
2021-12-13T04:37:30.104Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: TableStorageContextMiddleware: RequestMethod=POST RequestURL=http://127.0.0.1/devstoreaccount1/table0?$format=application%2Fjson%3Bodata%3Dminimalmetadata RequestHeaders:{"host":"127.0.0.1:10002","x-ms-version":"2019-02-02","dataserviceversion":"3.0","prefer":"return-no-content","accept":"application/json;odata=minimalmetadata","x-ms-client-request-id":"32d5fb60-d44f-4a19-820d-f4616715751c","x-ms-return-client-request-id":"true","user-agent":"azsdk-net-Data.Tables/12.3.0 (.NET 6.0.0-rtm.21522.10; Microsoft Windows 10.0.22000)","x-ms-date":"Mon, 13 Dec 2021 04:37:30 GMT","authorization":"SharedKeyLite devstoreaccount1:SpT8nUd0y53r1t3CN9vZuVrAMs2cW/aHMHRO/6bVyGE=","content-type":"application/json;odata=nometadata","content-length":"33"} ClientIP=127.0.0.1 Protocol=http HTTPVersion=1.1
2021-12-13T04:37:30.104Z 8688fe82-6dfd-4422-b51b-04600d098dbc debug: tableStorageContextMiddleware: Dispatch pattern string: /table0
2021-12-13T04:37:30.104Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: tableStorageContextMiddleware: Account=devstoreaccount1 tableName=table0
2021-12-13T04:37:30.105Z 8688fe82-6dfd-4422-b51b-04600d098dbc verbose: DispatchMiddleware: Dispatching request...
2021-12-13T04:37:30.105Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: DispatchMiddleware: Operation=Table_InsertEntity
2021-12-13T04:37:30.105Z 8688fe82-6dfd-4422-b51b-04600d098dbc verbose: AuthenticationMiddlewareFactory:createAuthenticationMiddleware() Validating authentications.
2021-12-13T04:37:30.105Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: TableSharedKeyLiteAuthenticator:validate() Start validation against account shared key authentication.
2021-12-13T04:37:30.105Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: TableSharedKeyLiteAuthenticator:validate() [STRING TO SIGN]:"Mon, 13 Dec 2021 04:37:30 GMT\n/devstoreaccount1/devstoreaccount1/table0"
2021-12-13T04:37:30.106Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: TableSharedKeyLiteAuthenticator:validate() Calculated authentication header based on key1: SharedKeyLite devstoreaccount1:SpT8nUd0y53r1t3CN9vZuVrAMs2cW/aHMHRO/6bVyGE=
2021-12-13T04:37:30.106Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: TableSharedKeyLiteAuthenticator:validate() Signature 1 matched.
2021-12-13T04:37:30.106Z 8688fe82-6dfd-4422-b51b-04600d098dbc verbose: DeserializerMiddleware: Start deserializing...
2021-12-13T04:37:30.107Z 8688fe82-6dfd-4422-b51b-04600d098dbc debug: deserialize(): Raw request body string is (removed all empty characters) {"PartitionKey":"","RowKey":"rk"}
2021-12-13T04:37:30.107Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: HandlerMiddleware: DeserializedParameters={"options":{"queryOptions":{"format":"application/json;odata=minimalmetadata"},"requestId":"32d5fb60-d44f-4a19-820d-f4616715751c","dataServiceVersion":"3.0","responsePreference":"return-no-content","tableEntityProperties":{"PartitionKey":"","RowKey":"rk"}},"version":"2019-02-02","body":"ReadableStream"}
2021-12-13T04:37:30.110Z 8688fe82-6dfd-4422-b51b-04600d098dbc verbose: SerializerMiddleware: Start serializing...
2021-12-13T04:37:30.111Z 8688fe82-6dfd-4422-b51b-04600d098dbc info: EndMiddleware: End response. TotalTimeInMS=7 StatusCode=204 StatusMessage=undefined Headers={"server":"Azurite-Table/3.15.0","content-type":"application/json;odata=minimalmetadata","x-ms-client-request-id":"32d5fb60-d44f-4a19-820d-f4616715751c","x-ms-request-id":"8688fe82-6dfd-4422-b51b-04600d098dbc","x-ms-version":"2021-02-12","date":"Mon, 13 Dec 2021 04:37:30 GMT","etag":"W/\"datetime'2021-12-13T04%3A37%3A30.1040000Z'\"","preference-applied":"return-no-content"}
2021-12-13T04:37:30.115Z 15d133b1-2528-4f0b-853f-a7757745b82a info: TableStorageContextMiddleware: RequestMethod=DELETE RequestURL=http://127.0.0.1/devstoreaccount1/table0(PartitionKey='',RowKey='rk')?$format=application%2Fjson%3Bodata%3Dminimalmetadata RequestHeaders:{"host":"127.0.0.1:10002","x-ms-version":"2019-02-02","dataserviceversion":"3.0","if-match":"*","accept":"application/json;odata=minimalmetadata","x-ms-client-request-id":"cabbd44e-c26c-4d75-910b-384c967e8824","x-ms-return-client-request-id":"true","user-agent":"azsdk-net-Data.Tables/12.3.0 (.NET 6.0.0-rtm.21522.10; Microsoft Windows 10.0.22000)","x-ms-date":"Mon, 13 Dec 2021 04:37:30 GMT","authorization":"SharedKeyLite devstoreaccount1:b/dfCdHhbLihmjNym3iBcIlslIL1bG4jNafbmKvPc0w="} ClientIP=127.0.0.1 Protocol=http HTTPVersion=1.1
2021-12-13T04:37:30.115Z 15d133b1-2528-4f0b-853f-a7757745b82a debug: tableStorageContextMiddleware: Dispatch pattern string: /table0(PartitionKey='PLACEHOLDER',RowKey='PLACEHOLDER')
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a info: tableStorageContextMiddleware: Account=devstoreaccount1 tableName=table0
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a verbose: DispatchMiddleware: Dispatching request...
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a info: DispatchMiddleware: Operation=Table_DeleteEntity
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a verbose: AuthenticationMiddlewareFactory:createAuthenticationMiddleware() Validating authentications.
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a info: TableSharedKeyLiteAuthenticator:validate() Start validation against account shared key authentication.
2021-12-13T04:37:30.116Z 15d133b1-2528-4f0b-853f-a7757745b82a info: TableSharedKeyLiteAuthenticator:validate() [STRING TO SIGN]:"Mon, 13 Dec 2021 04:37:30 GMT\n/devstoreaccount1/devstoreaccount1/table0(PartitionKey='',RowKey='rk')"
2021-12-13T04:37:30.117Z 15d133b1-2528-4f0b-853f-a7757745b82a info: TableSharedKeyLiteAuthenticator:validate() Calculated authentication header based on key1: SharedKeyLite devstoreaccount1:b/dfCdHhbLihmjNym3iBcIlslIL1bG4jNafbmKvPc0w=
2021-12-13T04:37:30.117Z 15d133b1-2528-4f0b-853f-a7757745b82a info: TableSharedKeyLiteAuthenticator:validate() Signature 1 matched.
2021-12-13T04:37:30.118Z 15d133b1-2528-4f0b-853f-a7757745b82a verbose: DeserializerMiddleware: Start deserializing...
2021-12-13T04:37:30.118Z 15d133b1-2528-4f0b-853f-a7757745b82a info: HandlerMiddleware: DeserializedParameters={"options":{"queryOptions":{"format":"application/json;odata=minimalmetadata"},"requestId":"cabbd44e-c26c-4d75-910b-384c967e8824","dataServiceVersion":"3.0"},"version":"2019-02-02","ifMatch":"*"}
2021-12-13T04:37:30.120Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Received a MiddlewareError, fill error information to HTTP response
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: ErrorName=StorageError ErrorMessage="The values are not specified for all properties in the entity."  ErrorHTTPStatusCode=400 ErrorHTTPStatusMessage=undefined ErrorHTTPHeaders={"x-ms-error-code":"PropertiesNeedValue","x-ms-request-id":"15d133b1-2528-4f0b-853f-a7757745b82a","x-ms-version":"2021-02-12"} ErrorHTTPBody="{\"odata.error\":{\"code\":\"PropertiesNeedValue\",\"message\":{\"lang\":\"en-US\",\"value\":\"The values are not specified for all properties in the entity.\\nRequestId:15d133b1-2528-4f0b-853f-a7757745b82a\\nTime:2021-12-13T04:37:30.119Z\"}}}" ErrorStack="\"StorageError: The values are not specified for all properties in the entity.\\n    at Function.getPropertiesNeedValue (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\src\\\\table\\\\errors\\\\StorageErrorFactory.ts:194:12)\\n    at TableHandler.deleteEntity (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\src\\\\table\\\\handlers\\\\TableHandler.ts:443:33)\\n    at C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\src\\\\table\\\\generated\\\\middleware\\\\HandlerMiddlewareFactory.ts:82:10\\n    at C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\src\\\\table\\\\generated\\\\ExpressMiddlewareFactory.ts:97:57\\n    at Layer.handle [as handle_request] (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\node_modules\\\\express\\\\lib\\\\router\\\\layer.js:95:5)\\n    at trim_prefix (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\node_modules\\\\express\\\\lib\\\\router\\\\index.js:317:13)\\n    at C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\node_modules\\\\express\\\\lib\\\\router\\\\index.js:284:7\\n    at Function.process_params (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\node_modules\\\\express\\\\lib\\\\router\\\\index.js:335:12)\\n    at next (C:\\\\z\\\\Git\\\\joelverhagen\\\\Azurite\\\\node_modules\\\\express\\\\lib\\\\router\\\\index.js:275:10)\\n    at processTicksAndRejections (node:internal/process/task_queues:96:5)\""
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set HTTP code: 400
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set HTTP Header: x-ms-error-code=PropertiesNeedValue
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set HTTP Header: x-ms-request-id=15d133b1-2528-4f0b-853f-a7757745b82a
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set HTTP Header: x-ms-version=2021-02-12
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set content type: application/json;odata=minimalmetadata;streaming=true;charset=utf-8
2021-12-13T04:37:30.142Z 15d133b1-2528-4f0b-853f-a7757745b82a error: ErrorMiddleware: Set HTTP body: "{\"odata.error\":{\"code\":\"PropertiesNeedValue\",\"message\":{\"lang\":\"en-US\",\"value\":\"The values are not specified for all properties in the entity.\\nRequestId:15d133b1-2528-4f0b-853f-a7757745b82a\\nTime:2021-12-13T04:37:30.119Z\"}}}"
2021-12-13T04:37:30.144Z 15d133b1-2528-4f0b-853f-a7757745b82a info: EndMiddleware: End response. TotalTimeInMS=29 StatusCode=400 StatusMessage=Bad Request Headers={"server":"Azurite-Table/3.15.0","x-ms-error-code":"PropertiesNeedValue","x-ms-request-id":"15d133b1-2528-4f0b-853f-a7757745b82a","x-ms-version":"2021-02-12","content-type":"application/json;odata=minimalmetadata;streaming=true;charset=utf-8"}
2021-12-13T04:37:35.133Z 	 info: Azurite Blob service is closing...
2021-12-13T04:37:35.134Z 	 info: Azurite Queue service is closing...
2021-12-13T04:37:35.134Z 	 info: Azurite Table service is closing...
2021-12-13T04:37:35.137Z 	 info: BlobGCManager:close() Start closing BlobGCManager. Set status to Closing.
2021-12-13T04:37:35.138Z 	 info: QueueGCManager:close() Start closing QueueGCManager, set status to Closing.
2021-12-13T04:37:35.138Z 	 info: BlobGCManager:start() Mark and sweep loop is closed.
2021-12-13T04:37:35.138Z 	 info: BlobGCManager:close() BlobGCManager successfully closed. Set status to Closed.
2021-12-13T04:37:35.138Z 	 info: QueueGCManager:start() Mark and sweep loop is closed.
2021-12-13T04:37:35.138Z 	 info: QueueGCManager:close() QueueGCManager successfully closed, set status to Closed.
2021-12-13T04:37:35.138Z 	 info: Azurite Table service successfully closed
2021-12-13T04:37:35.140Z 	 info: Azurite Blob service successfully closed
2021-12-13T04:37:35.140Z 	 info: Azurite Queue service successfully closed
@joelverhagen joelverhagen changed the title Cannot delete entity with empty string partition key Cannot delete entity with empty string partition key or row key Dec 13, 2021
@RuoyuWang-MS
Copy link
Member

I encountered the same problem when using Azurite 3.15.0. Cannot delete entity with Empty partition key in the table.

@edwin-huber
Copy link
Collaborator

Thanks for raising.
PR inbound.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
table-storage Relating to Azurite table storage implementation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants