Skip to content

Commit

Permalink
Merge pull request #1023 from tulios/fix-describeconfigs-configsource
Browse files Browse the repository at this point in the history
Add ConfigSource to DescribeConfigs
  • Loading branch information
Nevon committed Feb 10, 2021
2 parents 76ec563 + c294213 commit e1a9d9e
Show file tree
Hide file tree
Showing 18 changed files with 219 additions and 68 deletions.
1 change: 1 addition & 0 deletions docs/Admin.md
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,7 @@ Example response:
configName: 'cleanup.policy',
configValue: 'delete',
isDefault: true,
configSource: 5,
isSensitive: false,
readOnly: false
}],
Expand Down
2 changes: 2 additions & 0 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ const Partitioners = require('./src/producer/partitioners')
const Compression = require('./src/protocol/message/compression')
const ResourceTypes = require('./src/protocol/resourceTypes')
const ConfigResourceTypes = require('./src/protocol/configResourceTypes')
const ConfigSource = require('./src/protocol/configSource')
const AclResourceTypes = require('./src/protocol/aclResourceTypes')
const AclOperationTypes = require('./src/protocol/aclOperationTypes')
const AclPermissionTypes = require('./src/protocol/aclPermissionTypes')
Expand All @@ -31,4 +32,5 @@ module.exports = {
AclOperationTypes,
AclPermissionTypes,
ResourcePatternTypes,
ConfigSource,
}
83 changes: 56 additions & 27 deletions src/broker/__tests__/describeConfigs.spec.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
const { createConnection, connectionOpts, secureRandom, newLogger } = require('testHelpers')
const RESOURCE_TYPES = require('../../protocol/resourceTypes')
const ConfigSource = require('../../protocol/configSource')
const Broker = require('../index')

const sortByConfigName = array => array.sort((a, b) => a.configName.localeCompare(b.configName))
Expand Down Expand Up @@ -55,7 +56,8 @@ describe('Broker > describeConfigs', () => {
{
configName: 'compression.type',
configValue: 'producer',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [
Expand All @@ -69,7 +71,8 @@ describe('Broker > describeConfigs', () => {
{
configName: 'retention.ms',
configValue: '604800000',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
Expand Down Expand Up @@ -110,31 +113,35 @@ describe('Broker > describeConfigs', () => {
{
configName: 'compression.type',
configValue: 'producer',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'message.format.version',
configValue: expect.stringMatching(/^(0\.11\.0-IV2|1\.1-IV0|2\.[234]-IV1)$/),
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'file.delete.delay.ms',
configValue: '60000',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'leader.replication.throttled.replicas',
configValue: '',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
Expand All @@ -143,126 +150,142 @@ describe('Broker > describeConfigs', () => {
configName: 'max.compaction.lag.ms',
configSynonyms: [],
configValue: '9223372036854775807',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
},
{
configName: 'message.downconversion.enable',
configSynonyms: [],
configValue: 'true',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
},
{
configName: 'max.message.bytes',
configValue: '1000012',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'min.compaction.lag.ms',
configValue: '0',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'message.timestamp.type',
configValue: 'CreateTime',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'min.insync.replicas',
configValue: '1',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'segment.jitter.ms',
configValue: '0',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'preallocate',
configValue: 'false',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'index.interval.bytes',
configValue: '4096',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'min.cleanable.dirty.ratio',
configValue: '0.5',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'unclean.leader.election.enable',
configValue: 'false',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'retention.bytes',
configValue: '-1',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'delete.retention.ms',
configValue: '86400000',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'cleanup.policy',
configValue: 'delete',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'flush.ms',
configValue: '9223372036854775807',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'follower.replication.throttled.replicas',
configValue: '',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
Expand All @@ -271,46 +294,52 @@ describe('Broker > describeConfigs', () => {
configName: 'segment.bytes',
configValue: '1073741824',
isDefault: expect.any(Boolean),
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'retention.ms',
configValue: '604800000',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'segment.ms',
configValue: '604800000',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'message.timestamp.difference.max.ms',
configValue: '9223372036854775807',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'flush.messages',
configValue: '9223372036854775807',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
},
{
configName: 'segment.index.bytes',
configValue: '10485760',
isDefault: false,
isDefault: true,
configSource: ConfigSource.DEFAULT_CONFIG,
isSensitive: false,
readOnly: false,
configSynonyms: [],
Expand Down
12 changes: 12 additions & 0 deletions src/protocol/configSource.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/**
* @see https://github.com/apache/kafka/blob/1f240ce1793cab09e1c4823e17436d2b030df2bc/clients/src/main/java/org/apache/kafka/common/requests/DescribeConfigsResponse.java#L115-L122
*/
module.exports = {
UNKNOWN: 0,
TOPIC_CONFIG: 1,
DYNAMIC_BROKER_CONFIG: 2,
DYNAMIC_DEFAULT_BROKER_CONFIG: 3,
STATIC_BROKER_CONFIG: 4,
DEFAULT_CONFIG: 5,
DYNAMIC_BROKER_LOGGER_CONFIG: 6,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"type":"Buffer","data":[0,0,0,1,4,0,1,48,0,0,0,1,0,26,115,97,115,108,46,107,101,114,98,101,114,111,115,46,115,101,114,118,105,99,101,46,110,97,109,101]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"type":"Buffer","data":[0,0,0,1,2,0,11,116,111,112,105,99,45,116,101,115,116,50,0,0,0,1,0,12,114,101,116,101,110,116,105,111,110,46,109,115]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"type":"Buffer","data":[0,0,0,0,0,0,0,1,0,0,255,255,4,0,1,48,0,0,0,1,0,26,115,97,115,108,46,107,101,114,98,101,114,111,115,46,115,101,114,118,105,99,101,46,110,97,109,101,255,255,0,0,0]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"type":"Buffer","data":[0,0,0,0,0,0,0,1,0,0,255,255,2,0,11,116,111,112,105,99,45,116,101,115,116,50,0,0,0,1,0,12,114,101,116,101,110,116,105,111,110,46,109,115,0,9,49,50,51,52,53,54,55,56,57,0,0,0]}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"type":"Buffer","data":[0,0,0,1,2,0,74,116,101,115,116,45,116,111,112,105,99,45,101,48,99,97,100,98,57,101,57,102,49,97,54,51,57,54,99,49,49,54,45,53,52,52,51,56,45,52,51,98,98,56,98,54,57,45,51,50,99,102,45,52,57,48,57,45,97,102,48,50,45,99,98,101,50,48,99,50,100,57,101,51,100,0,0,0,2,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,12,114,101,116,101,110,116,105,111,110,46,109,115,1]}
{"type":"Buffer","data":[0,0,0,1,2,0,11,116,111,112,105,99,45,116,101,115,116,49,0,0,0,2,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,12,114,101,116,101,110,116,105,111,110,46,109,115,1]}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"type":"Buffer","data":[0,0,0,0,0,0,0,1,0,0,255,255,2,0,74,116,101,115,116,45,116,111,112,105,99,45,101,48,99,97,100,98,57,101,57,102,49,97,54,51,57,54,99,49,49,54,45,53,52,52,51,56,45,52,51,98,98,56,98,54,57,45,51,50,99,102,45,52,57,48,57,45,97,102,48,50,45,99,98,101,50,48,99,50,100,57,101,51,100,0,0,0,2,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,8,112,114,111,100,117,99,101,114,0,5,0,0,0,0,1,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,8,112,114,111,100,117,99,101,114,5,0,12,114,101,116,101,110,116,105,111,110,46,109,115,0,9,54,48,52,56,48,48,48,48,48,0,5,0,0,0,0,0]}
{"type":"Buffer","data":[0,0,0,0,0,0,0,1,0,0,255,255,2,0,11,116,111,112,105,99,45,116,101,115,116,49,0,0,0,2,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,8,112,114,111,100,117,99,101,114,0,5,0,0,0,0,1,0,16,99,111,109,112,114,101,115,115,105,111,110,46,116,121,112,101,0,8,112,114,111,100,117,99,101,114,5,0,12,114,101,116,101,110,116,105,111,110,46,109,115,0,9,54,48,52,56,48,48,48,48,48,0,5,0,0,0,0,0]}
Loading

0 comments on commit e1a9d9e

Please sign in to comment.