Intellij update indices が永遠に継続する[あとでタイトル変更する]

Intellij update indicesが永遠に継続する

Version

IntelliJ IDEA 2020.3.3 (Ultimate Edition)

事象

update indexが永遠に続く。

試したこと1

File>Invalidate Caches / Restart ... ダイアログが表示->Invalidate and Restartを選択

f:id:unyaa:20210325133616p:plain

効果

なし

試したこと2

StackOverFlowで検索

結果 https://stackoverflow.com/questions/15991561/intelli-j-idea-takes-forever-to-update-indices

対応方針があったので試す。 - IDEを終了 - キャッシュを自分で削除する - IDEを起動 上記で対応完了

キャッシュの場所は下記フォルダとなる。フォルダの削除でキャッシュ削除完了

win
C:\Users\{ユーザ名}\AppData\Local\JetBrains\IntelliJIdea2020.3\caches

上記で対応完了

SpringBoot Transaction Exception

Springboot 2.4

Springboot のTransactionで例外が発生した場合は下記のサブタイプの例外が発生する可能性がある。

※1.Transaction例外クラスはこちらの抽象くらす:org.springframework.transaction.TransactionException

説明に関してはもう少し詳細に記述すること。

Exception 説明
HeuristicCompletionException 今回は関係ない
IllegalTransactionStateException 今回関係ない
InvalidIsolationLevelException 今回関係ない
InvalidTimeoutException 今回関係ない
NestedTransactionNotSupportedException 今回関係ない
NoTransactionException 今回関係ない
NoTransactionInContextException in TransactionContextManager 既存のTransaction:今回関係ない
TransactionSuspensionNotSupportedException 既存のTransaction:今回関係ない
TransactionUsageException ライブラリ側:今回関係ない
UnexpectedRollbackException 予期せぬ:今回関係ない
CannotCreateTransactionException Transactionの作成失敗
TransactionTimedOutException Transactionのタイムアウト
TransactionSystemException コミットやTransactionで問題が発生

MySQLの導入

windows10

 

https://downloads.mysql.com/archives/community/

上記リンクからバージョンを選択してバイナリでDL

 

分かりやすいディレクトリに展開

 

展開先のフォルダ配下にdataフォルダを作成

 

展開先のフォルダ配下にmy.iniファイルを作成

中身は以下

```

[client]

default-character-set = utf8

[mysqld]

#console に出力されるタイムスタンプの設定をOSと同じにする。

log_timestamps=SYSTEM

character-set-server = utf8

basedir = 展開先のディレクトリの絶対パス

datadir = dataディレクトリの絶対パス

 

port = 3306

 

```

cmd

```

#初期化

mysqld --initialize-insecure --console

#mysql 起動

mysqld --console

#rootパスワード設定

mysql -u root

(mysql>)SET PASSWORD = 'rootroot';

#ログイン確認

mysql -u root -p

```

#rootroot:新規パスワード 任意の文字列とする。

 

 

タイムスタンプの設定は下記参照

blog.wackwack.net

 

 

gitコミットメッセージ変更

直前のコミットのメッセージ変更

git commit --amend -m "cssを修正"

 

直前以外の場合
例は3コミット前

git rebase -i HEAD~3

git rebase -i HEAD^^^

 

gitのエディタが展開するので、

コミットメッセージを変更したいコミットの状態をpickからeditに変更し保存し閉じる

 

以下コマンドでメッセージを修正

git commit --amend -m "refs #25 htmlを修正"

 

以下で処理終了。

git rebase --continue

 

適宜

git log で処理状態を確認

 

参考サイト

https://www.granfairs.com/blog/staff/git-commit-fix

リベースのメモ(あとで編集する。)

git rebase する場合は必ずスカッシュして一つにまとめてから行う。


git rebase -i HEAD^^ またはコミットID(vim スキャッシュする。->メッセージを消す。->コミットメッセージを編集する。)

スキャッシュできたか確認する。

ブランチをリモートにフォースプッシュする。

developブランチを最新化

対象ブランチに移動
git rebase develop
->コンフリクト出たとき
codeで修正
 ->git rebase --continue(1/1出た場合)

リモートにフォースプッシュ


 

リベースに失敗した場合かつリモートにリベース前のコミットとブランチがある場合。
git rebase --hard リモートエイリアス名/リモートブランチ名

 

リベースに失敗した場合かつリモートに情報がない時
git reflog 

git reset --hard HEAD@{3}

HEAD@{3}:reflogの内容を加味して適宜変更(コミットのインデックス)

git reflogはリミット指定できる、logと同じ要領。


参考リンク

https://yu8mada.com/2018/05/25/how-to-restore-the-original-history-after-rebasing-git-s-commits-accidentally/