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

Handling SslException on channel close #16032

Conversation

FabianMeiswinkel
Copy link
Member

This issue was reported by a customer (ICM#205604603) - adding changes to handle this error and reduce noise level in logs.

Once we have this issue resolved, we would need you to take a look at the below exception.

Customer is getting hundreds of these exceptions while performing write operations. They are only seeing these errors in the logs and there is no impact to the application.

javax.net.ssl.SSLException: SSLEngine closed already
at io.netty.handler.ssl.SslHandler.wrap(SslHandler.java:854)
at io.netty.handler.ssl.SslHandler.wrapAndFlush(SslHandler.java:811)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:792)
at io.netty.handler.ssl.SslHandler.flush(SslHandler.java:1939)
at io.netty.handler.ssl.SslHandler.closeOutbound0(SslHandler.java:668)
at io.netty.handler.ssl.SslHandler.closeOutbound(SslHandler.java:652)
at io.netty.handler.ssl.SslHandler.closeOutbound(SslHandler.java:640)
at com.azure.cosmos.implementation.directconnectivity.rntbd.RntbdRequestManager.close(RntbdRequestManager.java:391)
at io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:622)
at io.netty.channel.AbstractChannelHandlerContext.access$1200(AbstractChannelHandlerContext.java:61)
at io.netty.channel.AbstractChannelHandlerContext$11.run(AbstractChannelHandlerContext.java:611)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:748)

Copy link
Contributor

@moderakh moderakh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

one minor comment. LGTM.

@FabianMeiswinkel FabianMeiswinkel merged commit aced874 into Azure:master Oct 7, 2020
openapi-sdkautomation bot pushed a commit to AzureSDKAutomation/azure-sdk-for-java that referenced this pull request Jan 5, 2022
Dev datamigration microsoft.data migration 2020 09 01 preview (Azure#16032)

* Adds base for updating Microsoft.DataMigration from version stable/2021-06-30 to version 2020-09-01-preview

* Updates readme

* Updates API version in new specs and examples

* add examples and change swagger

* camel casing error (removing the resource since it is redundant)

* added "systemData" property to the response of sqlMigrationService

* adding isDataAction property in operationsDefinition

* fixing Avocado error : removing unreferenced files

* styling changes

* adding systemData to DatabaseMigrations

* suppressing lintDiff

* Revert "styling changes"

This reverts commit 4cba4308e6b3b4f35144f6ae28b4c760cd6f90f8.

* formatting changes (after running npm run prettier)

* adding v1 apis

* adding v1 apis

* Revert "adding v1 apis". Bad update

This reverts commit 99b1f84465749a4948ece4cacfb63652b0cd5a4e.

* Revert "adding v1 apis". Bad update

This reverts commit 795344a819d2d72f3c86c3714274df48f5303205.

* adding v1 paths in v2 spec

* adding stable-2018 apis

* updating api version in definitions

* avocado error :  removing unreferenced files

* suppressing lintdiff errors R4013 and R4037

* removing subscriptioid parameter from v1 and
referencing to susbscriptionid parameter from v2 (to resolve conflict)

* adding v1 apis as a separate json file

* adding a missing example for v1 spec

* removing duplicate api (get operation) from v1 spec

* Revert "removing duplicate api (get operation) from v1 spec"

This reverts commit 545e6ff29239d3b33f393af8b8c4fd4021cebe1f.

* avocado error : api versions correction

* avocado error : adding definitions in readme and changing api version in v2 spec to 2020-09-01-preview

* adding missing definitions and removing extra definitions in readme

* removing operation path from v1 spec

* trial : trying merging with 2021 stable version

* nit errors in readme

* updating api versions in definitions of 2021 stable version

* removing operations api from v1 (stable 2021)

* changing sqlMigrationInfo to sqlMigrationInformation in v2 swagger

* Renaming FileShare to SqlFileShare in v2 spec

* Renamimg BackupFileInfo to SqlBackupFileInfo in v2 spec

* renaming BackupSeiInfdo to SqlBackupSetInfo in v2 spec

* Renaming TrackedResource to TrackedResourceARM in the v1 spec

* deleting duplicate subscriptionId parameter in v1

* sqlmigration casing error

* referencing SystemData definition from the v2 spec

* avacado error : removing unreferenced file Operations_List.json

* adding custom-words.txt file

* reverting adding custom-words.txt

* exchanging positions of sqlmigration and datamigration in readme

* adding sqlmigration in custom-words.txt

* adding systemData to TrackedResource in v2
removing TrackedResourceARM from v1 and referring to v2 TrackedResource instead

* adding "x-ms-azure-resource": true extension in DataMigrationService and Project definitions in v1

* changing veersion from 2020-09-01-preview to "2021-10-30-preview"

* manually changing api version (to 2021-10-30)in readme

* adding ooperations api to v1 spec

* adding the subscriptionId parameter in v1 spec

* adding operations_list in the examples (for v1)

* Revert "adding ooperations api to v1 spec", adding the subscriptionId parameter in v1 spec, adding operations_list in the examples (for v1)

This reverts commit b94a96d8f48edef45967a57050e09eb27f9ea0de, 40e80e0d2a8e9fab72443e3893a9f0712c224f0a, 7be34463aaf58418f4574d3df9288e64cd27c5e4

* removing x-ms-azure-resource extension

* Revert "removing x-ms-azure-resource extension"

This reverts commit 8bf42972d7a1f3e5f8f1f4bf0d1fad19b77a161c.

* add subscriptionId to v1 spec

* Revert "add subscriptionId to v1 spec"

This reverts commit e3e729be0b1124875e279d9d718d8226dba2f8b8.

* removing read only : true for systemData properties

* setting readonly to true in systemData definition in v2 swagger.
(note : the chnages in v2 swagger are done manually for now, change these from the RP side too)

* renaming the specs to check if having the name datamigration.json has some importance

* Revert "renaming the specs to check if having the name datamigration.json has some importance"

This reverts commit a68c0c07d2a3f9932310eb910a683d1e824d7dfc.

* adding "x-ms-azure-resource": true to trackedResource and removing it from
datamigrationService and Project definition as they extend from trackedResource

* correctly placing "x-ms-azure-resource": true

* prettier check error on sqlmigration.json

* referencing systemData from common-types/resource-management/v2/types.json#/definitions
instead from v2 spec (to see if that affects the systemData error in cross-version)

* Revert "referencing systemData from common-types/resource-management/v2/types.json#/definitions"

This reverts commit 94641f1b36cc7828ea8efd21f4df89c282f51941.

* keeping subscriptionId parameter in both specs (by renaming it in v2)

* renaming subscriptionId to subscriptionIdParameter in the paths of v2

* casing error

* using subscriptionIdParameter instead of subscriptionId in the examples of v2

* renaming subscriptionId to subscriptionidParameter in v2 example

* Reverting the changes related to keeping subscriptionId parameter in both specs

This reverts commit fa22043a2b4ca284466bacda244f19c087a78718,
13d549928711b2d85e776f0680a7347242582ac2,
2755f643ed32b766fbb98ed6a7fd814211aecea3,
6e74171367ddf0a4a9f7a6b36b8f41a65a2c7701,
f3142b41b841793ae409a7e2d89d9bc4c262e9e7

* update tag in readme

* renaming trackedResource to trackedResourceARM in v2 and restoring the trackedResource in v1

* Revert "renaming trackedResource to trackedResourceARM in v2 and restoring the trackedResource in v1"

This reverts commit 269a4c3305c6e282bfa192b162b959d1b8083033.

* removing system data and x-ms-azure extension from tracked resource (because making changes in the tracked resource will involove dsMianDev repo changes)

* adding "x-ms-azure-resource": true to trackedResource of v1

* adding "x-ms-azure-resource": true to dataMigration service and project
(because of the error : The 200 response model for an ARM PUT operation must have x-ms-azure-resource extension set to true in its hierarchy. Operation: 'Services_CreateOrUpdate' Model: 'DataMigrationService'.
Location: Microsoft.DataMigration/preview/2021-10-30-preview/datamigration.json#L97)

also, removing x-ms-azure-resource from trackedResource

* Revert "adding "x-ms-azure-resource": true to trackedResource of v1"

This reverts commit bd0fb9c3bb96a736712baaa71efd2e91c49375c0.
and f2440eef137d7771217b9924ce941e876363afe9
(bad commit)

* Revert "removing system data and x-ms-azure extension from tracked resource (because making changes in the tracked resource will involove dsMianDev repo changes)"

This reverts commit e330db6a6abe2209d8d28a07da295267a036a9de.
SystemData is required to be in trackedResource

* Adding Scope Parameter to examples

* Revert "Adding Scope Parameter to examples"

This reverts commit b6c827585bb509306f2082e5686b31ee0333b182.

* Adding Scope parameter in response of SqlMiGetDatabaseMigration.json

* Adding Scope Parameter to other examples

* ARM:
Adding x-ms-secret: true to password (SqlFileshare and SqlConnectionInfomation), accountkey, authkey1 and authkey2

* Adding x-ms-pageable to DatabaseMigrations_ListByScope, Operations_List, SqlMigrationServices_ListByResourceGroup, SqlMigrationServices_listMigrations, SqlMigrationServices_ListBySubscription

* Removing x-ms-secret from Authkeys

* Adding x-ms-secret to authKeys in AuthenticationKeys and RegenAuthKeys defination

* Suppressing Secret_Property model validation error

* Adding suppress SECRET_PROPERTY in Suppression section

* changing GET getMonitoringData to POST listMonitoringData

* Removing location property from DatabaseMigration definition

* New Cancel\Cutover operations with MigrationOperationId in Request body.

* updating examples for cancel and cutover operations

* Chaning SqlMigrationService_GetResourceState to SqlMigrationService_Get

* Revert "Chaning SqlMigrationService_GetResourceState to SqlMigrationService_Get"

This reverts commit d16dc91a39245cecc4289b206af070eccb74b783.

* Changing GetResourceState to Get

* Adding 2 namespaces 2 SqlMi Migration API and updating examples

* Add Vm APIs, change operation Id of Mi and VM APIs and Update examples

* Suppressing list by subscription DatabaseMigration LintDiff error

* Adding discriminator to databaseMigrationProperties in order to separate SqlMi and SqlVm migrations

* [nit error] changing SqlConnectionInfo to SqlConnectionInformation

* nit error

* updating the example SqlMiGetDatabaseMigration.json to use"kind" in order to resolve the error : Additional properties not allowed

* updating all Mi and Vm examples to use "kind" in the properties

* styling changes (for prettier check)

* updating listMigrationsByService.json xample to use kind property

* running prettier check

* adding other properties in request along with kind in sqlVmCreateOrUpdateMax.json example

* Revert "adding other properties in request along with kind in sqlVmCreateOrUpdateMax.json example"

This reverts commit 8a47679fa45846b8bc41d7651c7c91e2f7ef943c.

* keeping both kind and other properties in the request body for sqlMiCreateOrUpdateDatabaseMigrationMax.json

* keeping both kind and other properties in all the examples

* adding enums for commandType and taskType discriminator

* adding x-ms-enum for commandType and taskType (v1)

* adding remaining enum values for taskType and commandType

* Removing List By Scope APIs for Mi and VM

* Remove Delete APIs for SqlMi and SqlVm

* Making DatabaseMigrationSqlVm_Cancel a x-ms-long-running-operation

* Moving common properties to DatabaseMigrationProperties

* Creating ResourceClass for SqlMi and SqlVm and updating the APIs accordingly

* Suppressing LintDiff errors for SqlMi and SqlVm Resource Classess

* Making x-ms-client-flatten: false for DatabaseMigration and other SqlMi and SqlVm Resource Class

* updating parameters in examples: Services_checkChildrenNameAvailability.json and Services_CheckNameAvailability

* v1 s360 errors

* object_missing_required_property error: updating example services_Start.json

* revert 81733a02cc88d52d69497fff3a5b7abafadedeee

* prettier check

* reverting all chnages related to  "v1 s360 errors"

* v1 s360 errors: adding missing properties to mongoDbConnectionInfo in common.json

* nit error

* v1 s360 errors: adding missing properties to sqlConnectionInfo in common.json

* v1 s360 errors: adding missing properties to mySqlConnectionInfo in common.json

* v1 s360 errors: adding missing properties to PostgreSqlConnectionInfo in common.json

* v1 s360 errors: adding missing properties in MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json

* v1 s360 errors: removing problematic property from MigratePostgreSqlAzureDbForPostgreSqlSyncTask

* v1 errors: adding missing properties in MigrateSchemaSqlServerSqlDbTask.json

* v1 s360 errors: adding missing properties in MigrateSqlServerSqlDbTask.json
and MigrateSqlServerSqlMITask.json

* v1 360 errors: adding missing properties in projects.json

* v1 s360 errors: adding missing properties in Services.json

* v1 s360 error: adding missing properties in Tasks.json

* v1 s360 errors: adding missing properties in TasksCommon.json

* v1 s360 error: adding missing properties to MigratePostgreSqlAzureDbForPostgreSqlSyncTask.json

* v1 s360 errors: adding items to events in "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError"

* v1 s360 errors: removing required property

* prettier check

* nit

Co-authored-by: Vasundhra Manhas <vmanhas@microsoft.com>
Co-authored-by: Thakur Ashutosh Suman <tsuman@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants