[
https://issues.apache.org/jira/browse/HIVE-26324?focusedWorklogId=781149&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-781149
]
ASF GitHub Bot logged work on HIVE-26324:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 14/Jun/22 12:38
Start Date: 14/Jun/22 12:38
Worklog Time Spent: 10m
Work Description: github-actions[bot] commented on PR #3369:
URL: https://github.com/apache/hive/pull/3369#issuecomment-1155130056
# @check-spelling-bot Report
### :red_circle: Please review
See the [files](3369/files/) view or the [action
log](https://github.com/apache/hive/actions/runs/2495234084) for details.
#### Unrecognized words (3)
api
esri
wkid
<details><summary>Previously acknowledged words that are now absent
</summary>aarry timestamplocal yyyy </details>
<details><summary>Available dictionaries could cover words not in the
dictionary</summary>
[cspell:cpp/cpp.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/cpp/cpp.txt)
(104293) covers 81 of them
[cspell:django/django.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/django/django.txt)
(2342) covers 14 of them
[cspell:golang/go.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/golang/go.txt)
(7745) covers 12 of them
[cspell:java/java.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/java/java.txt)
(33524) covers 11 of them
[cspell:filetypes/filetypes.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/filetypes/filetypes.txt)
(337) covers 10 of them
[cspell:aws/aws.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/aws/aws.txt)
(1485) covers 10 of them
[cspell:css/css.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/css/css.txt)
(993) covers 9 of them
[cspell:rust/rust.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/rust/rust.txt)
(112) covers 8 of them
[cspell:npm/npm.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/npm/npm.txt)
(671) covers 8 of them
[cspell:html/html.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/html/html.txt)
(542) covers 8 of them
[cspell:scala/scala.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/scala/scala.txt)
(2752) covers 7 of them
[cspell:php/php.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/php/php.txt)
(9785) covers 6 of them
[cspell:fullstack/fullstack.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/fullstack/fullstack.txt)
(181) covers 5 of them
[cspell:csharp/csharp.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/csharp/csharp.txt)
(123) covers 5 of them
[cspell:python/python.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/python/python.txt)
(364) covers 3 of them
[cspell:lua/lua.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/lua/lua.txt)
(391) covers 3 of them
[cspell:dotnet/dotnet.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/dotnet/dotnet.txt)
(9824) covers 2 of them
[cspell:ruby/ruby.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/ruby/ruby.txt)
(354) covers 1 of them
[cspell:bash/bash-words.txt](https://raw.githubusercontent.com/check-spelling/cspell-dicts/HEAD/dictionaries/bash/bash-words.txt)
(22) covers 1 of them
Consider adding them using:
```
with:
extra_dictionaries:
cspell:cpp/cpp.txt
cspell:django/django.txt
cspell:golang/go.txt
cspell:java/java.txt
cspell:filetypes/filetypes.txt
cspell:aws/aws.txt
cspell:css/css.txt
cspell:rust/rust.txt
cspell:npm/npm.txt
cspell:html/html.txt
cspell:scala/scala.txt
cspell:php/php.txt
cspell:fullstack/fullstack.txt
cspell:csharp/csharp.txt
cspell:python/python.txt
cspell:lua/lua.txt
cspell:dotnet/dotnet.txt
cspell:ruby/ruby.txt
cspell:bash/bash-words.txt
```
To stop checking additional dictionaries, add:
```
with:
check_extra_dictionaries: ''
```
</details>
<details><summary>To accept these unrecognized words as correct (and remove
the previously acknowledged and now absent words),
run the following commands</summary>
... in a clone of the
[[email protected]:SourabhBadhya/hive.git](https://github.com/SourabhBadhya/hive.git)
repository
on the `HIVE-26324` branch:
```
update_files() {
perl -e '
my @expect_files=qw('".github/actions/spelling/expect.txt"');
@ARGV=@expect_files;
my @stale=qw('"$patch_remove"');
my $re=join "|", @stale;
my $suffix=".".time();
my $previous="";
sub maybe_unlink { unlink($_[0]) if $_[0]; }
while (<>) {
if ($ARGV ne $old_argv) { maybe_unlink($previous); $previous="$ARGV$suffix";
rename($ARGV, $previous); open(ARGV_OUT, ">$ARGV"); select(ARGV_OUT); $old_argv
= $ARGV; }
next if /^(?:$re)(?:(?:\r|\n)*$| .*)/; print;
}; maybe_unlink($previous);'
perl -e '
my $new_expect_file=".github/actions/spelling/expect.txt";
use File::Path qw(make_path);
use File::Basename qw(dirname);
make_path (dirname($new_expect_file));
open FILE, q{<}, $new_expect_file; chomp(my @words = <FILE>); close FILE;
my @add=qw('"$patch_add"');
my %items; @items{@words} = @words x (1); @items{@add} = @add x (1);
@words = sort {lc($a)."-".$a cmp lc($b)."-".$b} keys %items;
open FILE, q{>}, $new_expect_file; for my $word (@words) { print FILE
"$word\n" if $word =~ /\w/; };
close FILE;
system("git", "add", $new_expect_file);
'
}
comment_json=$(mktemp)
curl -L -s -S \
-H "Content-Type: application/json" \
"COMMENT_URL" > "$comment_json"
comment_body=$(mktemp)
jq -r ".body // empty" "$comment_json" > $comment_body
rm $comment_json
patch_remove=$(perl -ne 'next unless s{^</summary>(.*)</details>$}{$1};
print' < "$comment_body")
patch_add=$(perl -e '$/=undef; $_=<>; if (m{Unrecognized
words[^<]*</summary>\n*```\n*([^<]*)```\n*</details>$}m) { print "$1" } elsif
(m{Unrecognized words[^<]*\n\n((?:\w.*\n)+)\n}m) { print "$1" };' <
"$comment_body")
update_files
rm $comment_body
git add -u
```
</details>
<!
Issue Time Tracking
-------------------
Worklog Id: (was: 781149)
Time Spent: 20m (was: 10m)
> Add "one-row-table" constraints on NOTIFICATION_SEQUENCE table
> --------------------------------------------------------------
>
> Key: HIVE-26324
> URL: https://issues.apache.org/jira/browse/HIVE-26324
> Project: Hive
> Issue Type: Task
> Reporter: Sourabh Badhya
> Assignee: Sourabh Badhya
> Priority: Minor
> Labels: pull-request-available
> Time Spent: 20m
> Remaining Estimate: 0h
>
> NOTIFICATION_SEQUENCE table must have only one row however there have been
> several reports of NOTIFICATION_SEQUENCE table having multiple rows. In order
> to prevent this situation from happening, its best to enforce "one-row-table"
> like constraints on NOTIFICATION_SEQUENCE table.
> Queries tried on supported databases -
> NOTIFICATION_SEQUENCE already has NNI_ID as the primary key. This will help
> us in adding "one-row-table" like constraints.
> *MySQL* -
> {code:java}
> ALTER TABLE `NOTIFICATION_SEQUENCE` ADD CONSTRAINT `ONE_ROW_CONSTRAINT` CHECK
> (`NNI_ID` = 1);{code}
> CHECK constraints are not effective in MySQL 5.7. It is introduced in 8.0.16.
> Similarly for MariaDB which uses the same schema script as that of MySQL,
> CHECK constraint is effective from 10.2.1.
> Link - [https://dev.mysql.com/doc/refman/5.7/en/create-table.html]
> Link - [https://mariadb.com/kb/en/constraint/]
> *Postgres* -
> Either change the definition of table like this -
> {code:java}
> CREATE TABLE "NOTIFICATION_SEQUENCE"
> (
> "NNI_ID" BIGINT NOT NULL CHECK ("NNI_ID" = 1),
> "NEXT_EVENT_ID" BIGINT NOT NULL,
> PRIMARY KEY ("NNI_ID")
> ); {code}
> OR add explicit constraints like this -
> {code:java}
> ALTER TABLE "NOTIFICATION_SEQUENCE"
> ADD CONSTRAINT "ONE_ROW_CONSTRAINT" CHECK ("NNI_ID" = 1); {code}
> *Derby* -
> {code:java}
> ALTER TABLE "APP"."NOTIFICATION_SEQUENCE" ADD CONSTRAINT "ONE_ROW_CONSTRAINT"
> CHECK (NNI_ID = 1); {code}
> *Oracle* -
> Either change the definition of table like this -
> {code:java}
> CREATE TABLE NOTIFICATION_SEQUENCE
> (
> NNI_ID NUMBER NOT NULL CHECK (NNI_ID = 1),
> NEXT_EVENT_ID NUMBER NOT NULL
> ); {code}
> OR add explicit constraints like this -
> {code:java}
> ALTER TABLE NOTIFICATION_SEQUENCE ADD CONSTRAINT ONE_ROW_CONSTRAINT CHECK
> (NNI_ID = 1); {code}
> *Microsoft SQL Server* -
> {code:java}
> ALTER TABLE NOTIFICATION_SEQUENCE ADD CONSTRAINT ONE_ROW_CONSTRAINT CHECK
> (NNI_ID = 1); {code}
--
This message was sent by Atlassian Jira
(v8.20.7#820007)