public void VisitPartitionReference(OraclePartitionReference partitionReference) { if (partitionReference.Partition == null) { return; } var databaseModel = partitionReference.Container.SemanticModel.DatabaseModel; if (partitionReference.Partition is OracleSubPartition subPartition) { var subPartitionDetail = new SubPartitionDetailsModel(); SetBasePartitionData(subPartitionDetail, partitionReference); databaseModel.UpdateSubPartitionDetailsAsync(subPartitionDetail, CancellationToken.None); ToolTip = new ToolTipPartition(subPartitionDetail); } else { var partitionDetail = new PartitionDetailsModel(16); SetBasePartitionData(partitionDetail, partitionReference); databaseModel.UpdatePartitionDetailsAsync(partitionDetail, CancellationToken.None); ToolTip = new ToolTipPartition(partitionDetail); } }
public void AddPartition(PartitionDetailsModel partition) { _partitionDetailsDictionary.Add(partition.Name, partition); if (VisiblePartitionDetails.Count < MaxVisiblePartitionCount) { VisiblePartitionDetails.Add(partition); } else { RaisePropertyChanged(nameof(MorePartitionsExistMessageVisibility)); RaisePropertyChanged(nameof(VisiblePartitionCount)); RaisePropertyChanged(nameof(PartitionCount)); } }
public override Task UpdateTableDetailsAsync(OracleObjectIdentifier objectIdentifier, TableDetailsModel dataModel, CancellationToken cancellationToken) { dataModel.AverageRowSize = 237; dataModel.LastAnalyzed = new DateTime(2014, 8, 19, 6, 18, 12); dataModel.BlockCount = 544; dataModel.RowCount = 8312; dataModel.SampleRows = 5512; dataModel.Logging = true; dataModel.AllocatedBytes = 22546891; dataModel.LargeObjectBytes = 1546891; dataModel.Compression = "Disabled"; dataModel.InMemoryCompression = "Disabled"; dataModel.Organization = "Index"; dataModel.PartitionKeys = "COLUMN1, COLUMN2"; dataModel.SubPartitionKeys = "COLUMN3, COLUMN4"; dataModel.IsTemporary = false; dataModel.Comment = "This is a table comment. "; dataModel.ParallelDegree = "Default"; var indexDetails = new IndexDetailsModel { Blocks = 123, Bytes = 123456, ClusteringFactor = 444, Compression = "Enabled", DegreeOfParallelism = 2, DistinctKeys = 1444, IsUnique = false, LastAnalyzed = new DateTime(2015, 1, 20, 21, 28, 12), LeafBlocks = 114, Logging = true, Name = "TEST_INDEX", Owner = "HUSQVIK", PrefixLength = 2, Rows = 2000, SampleRows = 333, Status = "Valid", Type = "Normal", TablespaceName = "TEST_TABLESPACE", Columns = { new IndexColumnModel { ColumnName = "COLUMN1", SortOrder = SortOrder.Descending }, new IndexColumnModel { ColumnName = "COLUMN2" } } }; var partition1Details = new PartitionDetailsModel { Name = "PARTITION_1" }; SetPartitionDetails(partition1Details); SetTablespaceDetails(dataModel.TablespaceDataModel); var partition2Details = new PartitionDetailsModel { Name = "PARTITION_2", TablespaceName = "TEST_TABLESPACE_2", AverageRowSize = 237, LastAnalyzed = new DateTime(2015, 2, 22, 16, 22, 14), BlockCount = 272, RowCount = 4162, SampleRows = 4162, Compression = "Disabled", Logging = true, HighValue = "'Partition key 2', 2", InMemoryCompression = "Disabled" }; dataModel.IndexDetails.Add(indexDetails); dataModel.AddPartition(partition1Details); dataModel.AddPartition(partition2Details); return Task.FromResult<object>(null); }
public override Task UpdatePartitionDetailsAsync(PartitionDetailsModel dataModel, CancellationToken cancellationToken) { SetPartitionDetails(dataModel); return Task.FromResult<object>(null); }
public void VisitPartitionReference(OraclePartitionReference partitionReference) { if (partitionReference.Partition == null) { return; } var databaseModel = partitionReference.Container.SemanticModel.DatabaseModel; var subPartition = partitionReference.Partition as OracleSubPartition; if (subPartition != null) { var subPartitionDetail = new SubPartitionDetailsModel(); SetBasePartitionData(subPartitionDetail, partitionReference); databaseModel.UpdateSubPartitionDetailsAsync(subPartitionDetail, CancellationToken.None); ToolTip = new ToolTipPartition(subPartitionDetail); } else { var partitionDetail = new PartitionDetailsModel(16); SetBasePartitionData(partitionDetail, partitionReference); databaseModel.UpdatePartitionDetailsAsync(partitionDetail, CancellationToken.None); ToolTip = new ToolTipPartition(partitionDetail); } }